exponenta event banner

bubblelim

Сопоставить размеры пузырей с диапазоном данных

    Описание

    пример

    bubblelim(limits) устанавливает пределы размера пузыря для текущих осей. Задание пределов в виде двухэлементного вектора формы [bmin bmax], где bmax больше, чем bmin. При установке пределов наименьший пузырь в осях соответствует bmin, и наибольший пузырь соответствует bmax. Например, bubblelim([10 50]) сопоставляет наименьший и наибольший пузыри со значениями данных 10 и 50 соответственно.

    пример

    lim = bubblelim возвращает пределы пузырей текущих осей в виде двухэлементного вектора.

    пример

    bubblelim(modevalue) включает автоматический или ручной режим для установки предельных значений. Определить modevalue как 'auto' позволяет MATLAB ® устанавливать пределы в соответствии с диапазоном выводимых на печать данных. Определить'manual' для удержания пределов на текущем значении.

    mv = bubblelim('mode') возвращает текущее значение режима предельных значений пузырей, которое равно 'auto' или 'manual'. По умолчанию значением режима является 'auto' если не указаны пределы или не задано значение режима 'manual'.

    пример

    ___ = bubblelim(ax,___) устанавливает пределы в указанных осях вместо текущих осей. Определить ax перед всеми другими входными аргументами в любом из предыдущих синтаксисов. Можно включить выходной аргумент, если исходный синтаксис поддерживает выходной аргумент. Например, lim = bubblelim(ax) возвращает пределы для осей ax.

    Примеры

    свернуть все

    Создайте пузырьковую диаграмму с легендой.

    x = 1:10;
    y = [4 7 10 7 3 6 5 1 9 7];
    sz = [5 1 14 6 9 12 15 20 8 2];
    bubblechart(x,y,sz);
    bubblelegend('Size Values','Location','northeastoutside')

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

    По умолчанию наименьшие и наибольшие пузырьки отображаются на наименьшие и наибольшие значения в sz вектор, соответственно. Позвоните в bubblelim функция, чтобы получить текущие пределы пузыря.

    bubblelim
    ans = 1×2
    
         1    20
    
    

    Изменить пределы на [1 50]. В результате пузыри на диаграмме становятся меньше, а метки в легенде пузырей автоматически обновляются.

    bubblelim([1 50])

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

    Создайте пузырьковую диаграмму с легендой.

    x =  1:10;
    y =  [4 7 10 7 3 6 5 1 9 7];
    sz = [5 1 15 3 6 15 22 6 50 16];
    bubblechart(x,y,sz);
    bubblelegend('Size Values','Location','northeastoutside')

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

    Получить текущие пределы пузыря.

    bubblelim
    ans = 1×2
    
         1    50
    
    

    Изменить пределы на [1 15]. В результате, некоторые из пузырей становятся больше, и любые пузыри, которые имеют sz значение больше, чем 15 подрезаны до наибольшего размера пузыря. Метки в условном обозначении пузыря автоматически обновляются.

    bubblelim([1 15])

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

    При создании нескольких пузырьковых диаграмм в пределах одних и тех же осей границы пузырей изменяются для каждой пузырьковой диаграммы, добавляемой к осям. Они меняются для размещения sz значения для всех диаграмм. Для сохранения постоянных пределов между командами печати используйте bubblelim('manual') команда.

    Например, создайте пузырьковую диаграмму с помощью sz значения, которые находятся в диапазоне от 1 кому 20.

    x =  1:10;
    y1 =  [4 7 10 7 3 6 5 1 9 7];
    sz1 = [5 1 14 6 9 12 15 20 8 2];
    bubblechart(x,y1,sz1)
    hold on

    Запросите пределы пузырей.

    bubblelim
    ans = 1×2
    
         1    20
    
    

    Удерживайте пределы пузыря при их текущем значении путем вызова bubblelim('manual') команда. Создайте другую пузырьковую диаграмму, в которой sz значения находятся в диапазоне от 1 кому 50.

    bubblelim('manual')
    y2 =  [10 7 2 3 8 9 2 1 3 4];
    sz2 = [5 1 14 6 9 12 15 50 8 2];
    bubblechart(x,y2,sz2);

    Еще раз запросите лимиты пузырей, чтобы убедиться, что они не изменились.

    bubblelim
    ans = 1×2
    
         1    20
    
    

    Определите два набора данных, которые показывают уровни загрязнения определенного токсина в различных городах на восточной и западной сторонах определенного столичного региона. Определить 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.

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

    свернуть все

    Пределы данных, определяемые как двухэлементный вектор, где первый элемент меньше второго.

    Пример: bubblelim([10 50]) сопоставляет наименьший и наибольший пузыри со значениями данных 10 и 50 соответственно.

    Значение режима, указанное как одно из следующих значений:

    • 'auto' - позволяет MATLAB определять пределы пузырьков. Пределы охватывают диапазон выводимых на печать данных. Используйте эту опцию, если вы изменяете пределы, а затем хотите вернуть им значения по умолчанию.

    • 'manual' - Поддержание лимитов на текущих значениях. Используйте эту опцию, если требуется сохранить текущие пределы при добавлении новых данных к осям с помощью hold on команда.

    Целевые оси, указанные как Axes, PolarAxes, или GeographicAxes объект.

    См. также

    | |

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