exponenta event banner

bubblechart

Пузырьковая диаграмма

    Описание

    пример

    bubblechart(x,y,sz) отображает цветные круглые маркеры (пузырьки) в местах, указанных векторами x и y. Укажите размеры пузырей в качестве вектора sz. Векторы x, y, и sz должна быть одинаковой длины.

    пример

    bubblechart(x,y,sz,c) задает цвета пузырей.

    • Чтобы использовать один цвет для всех пузырей, укажите имя цвета, шестнадцатеричный код цвета или триплет RGB.

    • Чтобы назначить разный цвет для каждого пузыря, укажите вектор той же длины, что и x и y. Кроме того, можно указать трехстолбцовую матрицу RGB-триплетов. Количество строк в матрице должно соответствовать длине x и y.

    пример

    bubblechart(___,Name,Value) определяет BubbleChart с использованием одного или нескольких аргументов пары имя-значение. Укажите свойства после всех других входных аргументов. Список свойств см. в разделе Свойства BubureChart.

    пример

    bubblechart(ax,___) отображение пузырьковой диаграммы в целевых осях ax. Укажите оси перед всеми другими входными аргументами.

    пример

    bc = bubblechart(___) возвращает значение BubbleChart объект. Использовать bc для изменения свойств диаграммы после ее создания. Список свойств см. в разделе Свойства BubureChart.

    Примеры

    свернуть все

    Определите координаты пузыря как векторы x и y. Определить sz как вектор, определяющий размеры пузырей. Затем создайте пузырьковую диаграмму из x и y.

    x = 1:20;
    y = rand(1,20);
    sz = rand(1,20);
    bubblechart(x,y,sz);

    Figure contains an axes. The axes contains an object of type bubblechart.

    Определите координаты пузыря как векторы x и y. Определить sz как вектор, определяющий размеры пузырей. Затем создайте пузырьковую диаграмму из x и yи укажите цвет как красный. По умолчанию пузыри частично прозрачны.

    x = 1:20;
    y = rand(1,20);
    sz = rand(1,20);
    bubblechart(x,y,sz,'red');

    Figure contains an axes. The axes contains an object of type bubblechart.

    Для пользовательского цвета можно указать триплет RGB или шестнадцатеричный цветовой код. Например, шестнадцатеричный цветовой код '#7031BB', задает оттенок фиолетового цвета.

    bubblechart(x,y,sz,'#7031BB');

    Figure contains an axes. The axes contains an object of type bubblechart.

    Для каждого пузыря можно также задать другой цвет. Например, укажите вектор для выбора цветов из карты цветов фигуры.

    c = 1:20;
    bubblechart(x,y,sz,c)

    Figure contains an axes. The axes contains an object of type bubblechart.

    Определите координаты пузыря как векторы x и y. Определить sz как вектор, определяющий размеры пузырей. Затем создайте пузырьковую диаграмму из x и y. По умолчанию пузыри на 60% непрозрачны, а края полностью непрозрачны с одинаковым цветом.

    x = 1:20;
    y = rand(1,20);
    sz = rand(1,20);
    bubblechart(x,y,sz);

    Figure contains an axes. The axes contains an object of type bubblechart.

    Можно настроить непрозрачность и цвет контура, задав MarkerFaceAlpha и MarkerEdgeColor соответственно. Один из способов установки свойства заключается в указании аргумента пары «имя-значение» при создании диаграммы. Например, можно указать 20% непрозрачности, задав значение MarkerFaceAlpha значение для 0.20.

    bc = bubblechart(x,y,sz,'MarkerFaceAlpha',0.20);

    Figure contains an axes. The axes contains an object of type bubblechart.

    При создании диаграммы вызовите bubblechart с аргументом return можно использовать аргумент return для установки свойств на диаграмме после ее создания. Например, можно изменить цвет контура на фиолетовый.

    bc.MarkerEdgeColor = [0.5 0 0.5];

    Figure contains an axes. The axes contains an object of type bubblechart.

    Определите набор данных, который показывает уровни загрязнения определенного токсина в различных городах в столичном регионе. Определить towns как население каждого города. Определить nsites как количество промышленных площадок в соответствующих городах. Определить levels как уровни загрязнения в городах. Затем просмотрите данные в пузырьковой диаграмме с метками осей. Позвоните в bubblesize функция, чтобы уменьшить размеры пузыря, и добавить легенду пузыря, которая показывает связь между размером пузыря и популяцией.

    towns = randi([25000 500000],[1 30]);
    nsites = randi(10,1,30);
    levels = (3 * nsites) + (7 * randn(1,30) + 20);
    
    % Display bubble chart with axis labels and legend
    bubblechart(nsites,levels,towns)
    xlabel('Number of Industrial Sites')
    ylabel('Contamination Level')
    bubblesize([5 30])
    bubblelegend('Town Population','Location','eastoutside')

    Figure contains an axes and an object of type bubblelegend. The axes contains an object of type bubblechart.

    При отображении нескольких наборов данных в одной оси можно включить несколько легенд. Для управления выравниванием легенд создайте диаграмму в мозаичном формате.

    Создайте два набора данных и постройте их вместе в одном объекте-осях в пределах компоновки мозаичной диаграммы.

    x = 1:20;
    y1 = rand(1,20);
    y2 = rand(1,20);
    sz1 = randi([20 500],[1,20]);
    sz2 = randi([20 500],[1,20]);
    
    % Plot data in a tiled chart layout
    t = tiledlayout(1,1);
    nexttile
    bubblechart(x,y1,sz1)
    hold on
    bubblechart(x,y2,sz1)
    hold off

    Figure contains an axes. The axes contains 2 objects of type bubblechart.

    Добавьте условное обозначение пузыря для иллюстрации размеров пузыря и еще одну условное обозначение для иллюстрации цветов. Позвоните в bubblelegend и legend с возвращаемым аргументом для хранения каждого объекта легенды. Переместите легенды в правую внешнюю плитку макета мозаичной диаграммы, установив значение Layout.Tile свойство каждого объекта для 'east'.

    blgd = bubblelegend('Population');
    lgd = legend('Springfield','Fairview');
    blgd.Layout.Tile = 'east';
    lgd.Layout.Tile = 'east';

    Figure contains an axes. The axes contains 2 objects of type bubblechart. These objects represent Springfield, Fairview.

    Определите два набора данных, которые показывают уровни загрязнения определенного токсина в различных городах на восточной и западной сторонах определенного столичного региона. Определить towns1 и towns2 как население по всему городу. Определить nsites1 и nsites2 как количество промышленных площадок в соответствующих городах. Затем определите levels1 и levels2 как уровни загрязнения в городах.

    towns1 = randi([25000 500000],[1 30]);
    towns2 = towns1/3;
    nsites1 = randi(10,1,30);
    nsites2 = randi(10,1,30);
    levels1 = (5 * nsites2) + (7 * randn(1,30) + 20);
    levels2 = (3 * nsites1) + (7 * randn(1,30) + 20);

    Создайте макет мозаичной диаграммы, чтобы можно было визуализировать данные бок о бок. Затем создайте объект-ось в первой плитке и постройте график данных для западной части города. Добавьте заголовок и метки оси. Затем повторите процесс во второй плитке для построения графика данных восточной стороны.

    tiledlayout(1,2,'TileSpacing','compact')
    
    % West side
    ax1 = nexttile;
    bubblechart(ax1,nsites1,levels1,towns1);
    title('West Side')
    xlabel('Number of Industrial Sites')
    
    % East side
    ax2 = nexttile;
    bubblechart(ax2,nsites2,levels2,towns2);
    title('East Side')
    xlabel('Number of Industrial Sites')
    ylabel('Contamination Level')

    Figure contains 2 axes. Axes 1 with title West Side contains an object of type bubblechart. Axes 2 with title East Side contains an object of type bubblechart.

    Уменьшите все размеры пузырей, чтобы было легче видеть все пузыри. В этом случае измените диапазон диаметров между 5 и 30 точки.

    bubblesize(ax1,[5 30])
    bubblesize(ax2,[5 30])

    Figure contains 2 axes. Axes 1 with title West Side contains an object of type bubblechart. Axes 2 with title East Side contains an object of type bubblechart.

    Города западной стороны в три раза больше городов восточной стороны, но размеры пузырей не отражают эту информацию на предыдущих диаграммах. Это происходит потому, что наименьшие и наибольшие пузырьки отображаются на наименьшие и наибольшие точки данных в каждой из осей. Чтобы отобразить пузыри в том же масштабе, определите вектор с именем alltowns это включает в себя население с обеих сторон города. Используйте bubblelim для сброса масштабирования для обеих диаграмм. Далее используйте xlim и ylim для отображения диаграмм с одинаковыми пределами оси X и оси Y.

    % Adjust scale of the bubbles
    alltowns = [towns1 towns2];
    newlims = [min(alltowns) max(alltowns)];
    bubblelim(ax1,newlims)
    bubblelim(ax2,newlims)
    
    % Adjust x-axis limits
    allx = [xlim(ax1) xlim(ax2)];
    xmin = min(allx);
    xmax = max(allx);
    xlim([ax1 ax2],[xmin xmax]);
    
    % Adjust y-axis limits
    ally = [ylim(ax1) ylim(ax2)];
    ymin = min(ally);
    ymax = max(ally);
    ylim([ax1 ax2],[ymin ymax]);

    Figure contains 2 axes. Axes 1 with title West Side contains an object of type bubblechart. Axes 2 with title East Side contains an object of type bubblechart.

    Входные аргументы

    свернуть все

    x-координаты, указанные как числовой скаляр или вектор той же длины, что и y.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical

    y-координаты, указанные как числовой скаляр или вектор той же длины, что и x.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical

    Размеры пузырей, определяемые как числовой скаляр или вектор той же длины, что и x и y.

    Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

    Цвет пузыря, определяемый как триплет RGB, имя цвета, шестнадцатеричный код цвета, матрица триплетов RGB или вектор индексов карты цветов. Можно отобразить все пузыри одного цвета или каждый пузырь другого цвета. По умолчанию пузырьки заполнены частично прозрачным цветом, а края пузырьков непрозрачны.

    Отображение пузырей с одинаковым цветом

    Укажите одно из следующих значений для отображения всех пузырьков одинакового цвета:

    • RGB триплет - вектор строки 1 на 3, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.4 0.6 0.7].

    • Шестнадцатеричный цветовой код - символьный вектор или строковый скаляр, начинающийся с хэш-символа (#), за которыми следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 кому F. Значения не чувствительны к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

    • Имя цвета или короткое имя - имя цвета или короткое имя из приведенной ниже таблицы.

    Имя цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
    'red''r'[1 0 0]'#FF0000'

    'green''g'[0 1 0]'#00FF00'

    'blue''b'[0 0 1]'#0000FF'

    'cyan' 'c'[0 1 1]'#00FFFF'

    'magenta''m'[1 0 1]'#FF00FF'

    'yellow''y'[1 1 0]'#FFFF00'

    'black''k'[0 0 0]'#000000'

    'white''w'[1 1 1]'#FFFFFF'

    Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB ®, используемых на многих типах графиков.

    Триплет RGBШестнадцатеричный цветовой кодВнешность
    [0 0.4470 0.7410]'#0072BD'

    [0.8500 0.3250 0.0980]'#D95319'

    [0.9290 0.6940 0.1250]'#EDB120'

    [0.4940 0.1840 0.5560]'#7E2F8E'

    [0.4660 0.6740 0.1880]'#77AC30'

    [0.3010 0.7450 0.9330]'#4DBEEE'

    [0.6350 0.0780 0.1840]'#A2142F'

    Отображение пузырей с различными цветами

    Укажите одно из следующих значений, чтобы назначить разный цвет для каждого пузыря:

    • Трехколонная матрица триплетов RGB - каждая строка матрицы задает цвет триплета RGB для соответствующего пузыря. Значения в каждой строке определяют интенсивности красного, зеленого и синего компонентов цвета. Интенсивности должны находиться в диапазоне [0,1]. Число строк должно быть равно длине векторов координат.

    • Вектор индексов карты цветов - вектор m-by-1 чисел, которые индексируются в текущую карту цветов. Значения в векторе охватывают весь диапазон карты цветов. Длина c должен быть равен длине векторов координат. Чтобы изменить карту цветов для осей, используйте colormap функция.

    Целевые оси, указанные как Axes, PolarAxes, или GeographicAxes объект. Если оси не заданы, MATLAB выводит на график текущие оси или создает Axes объект, если он не существует.

    Аргументы пары «имя-значение»

    Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

    Пример: bubblechart([1 2 3],[4 10 9],[1 2 3],'MarkerFaceColor','red') создает красные пузыри.

    Примечание

    Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства BubureChart.

    Цвет контура маркера, указан 'flat', триплет RGB, шестнадцатеричный цветовой код, имя цвета или короткое имя. Значение по умолчанию 'flat' использует цвета из CData собственность.

    Для пользовательского цвета укажите триплет RGB или шестнадцатеричный цветовой код.

    • Триплет RGB - это трехэлементный вектор строки, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.4 0.6 0.7].

    • Шестнадцатеричный цветовой код - это символьный вектор или строковый скаляр, начинающийся с хэш-символа (#), за которыми следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 кому F. Значения не чувствительны к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

    Можно также задать некоторые общие цвета по имени. В этой таблице перечислены параметры именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

    Имя цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
    'red''r'[1 0 0]'#FF0000'

    'green''g'[0 1 0]'#00FF00'

    'blue''b'[0 0 1]'#0000FF'

    'cyan' 'c'[0 1 1]'#00FFFF'

    'magenta''m'[1 0 1]'#FF00FF'

    'yellow''y'[1 1 0]'#FFFF00'

    'black''k'[0 0 0]'#000000'

    'white''w'[1 1 1]'#FFFFFF'

    'none'НеприменимоНеприменимоНеприменимоБез цвета

    Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB, используемых на многих типах графиков.

    Триплет RGBШестнадцатеричный цветовой кодВнешность
    [0 0.4470 0.7410]'#0072BD'

    [0.8500 0.3250 0.0980]'#D95319'

    [0.9290 0.6940 0.1250]'#EDB120'

    [0.4940 0.1840 0.5560]'#7E2F8E'

    [0.4660 0.6740 0.1880]'#77AC30'

    [0.3010 0.7450 0.9330]'#4DBEEE'

    [0.6350 0.0780 0.1840]'#A2142F'

    Пример: [0.5 0.5 0.5]

    Пример: 'blue'

    Пример: '#D2F9A7'

    Цвет заливки маркера, указанный как 'flat', 'auto', триплет RGB, шестнадцатеричный цветовой код, имя цвета или короткое имя. 'flat' параметр использует CData значения. 'auto' использует тот же цвет, что и Color свойство для осей.

    Для пользовательского цвета укажите триплет RGB или шестнадцатеричный цветовой код.

    • Триплет RGB - это трехэлементный вектор строки, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.4 0.6 0.7].

    • Шестнадцатеричный цветовой код - это символьный вектор или строковый скаляр, начинающийся с хэш-символа (#), за которыми следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 кому F. Значения не чувствительны к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

    Можно также задать некоторые общие цвета по имени. В этой таблице перечислены параметры именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

    Имя цветаКраткое имяТриплет RGBШестнадцатеричный цветовой кодВнешность
    'red''r'[1 0 0]'#FF0000'

    'green''g'[0 1 0]'#00FF00'

    'blue''b'[0 0 1]'#0000FF'

    'cyan' 'c'[0 1 1]'#00FFFF'

    'magenta''m'[1 0 1]'#FF00FF'

    'yellow''y'[1 1 0]'#FFFF00'

    'black''k'[0 0 0]'#000000'

    'white''w'[1 1 1]'#FFFFFF'

    'none'НеприменимоНеприменимоНеприменимоБез цвета

    Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB, используемых на многих типах графиков.

    Триплет RGBШестнадцатеричный цветовой кодВнешность
    [0 0.4470 0.7410]'#0072BD'

    [0.8500 0.3250 0.0980]'#D95319'

    [0.9290 0.6940 0.1250]'#EDB120'

    [0.4940 0.1840 0.5560]'#7E2F8E'

    [0.4660 0.6740 0.1880]'#77AC30'

    [0.3010 0.7450 0.9330]'#4DBEEE'

    [0.6350 0.0780 0.1840]'#A2142F'

    Пример: [0.3 0.2 0.1]

    Пример: 'green'

    Пример: '#D2F9A7'

    Ширина кромки маркера, заданная как положительное значение в единицах измерения точки.

    Пример: 0.75

    Прозрачность кромки маркера, заданная как скаляр в диапазоне [0,1] или 'flat'. Значение 1 является непрозрачным, а 0 - полностью прозрачным. Значения от 0 до 1 полупрозрачны.

    Чтобы задать для прозрачности кромки другое значение для каждой точки на графике, задайте значение AlphaData к вектору того же размера, что и XData и задайте значение MarkerEdgeAlpha свойство для 'flat'.

    Прозрачность грани маркера, заданная как скаляр в диапазоне [0,1] или 'flat'. Значение 1 является непрозрачным, а 0 - полностью прозрачным. Значения между 0 и 1 частично прозрачны.

    Чтобы задать для прозрачности грани маркера другое значение для каждой точки, задайте значение AlphaData к вектору того же размера, что и XData и задайте значение MarkerFaceAlpha свойство для 'flat'.

    См. также

    Функции

    Свойства

    Представлен в R2020b