boxchart

Прямоугольная диаграмма (прямоугольный график)

Описание

пример

boxchart(ydata) создает прямоугольную диаграмму или прямоугольный график для каждого столбца матрицы ydata. Если ydata является вектором, тогда boxchart создает один прямоугольный график.

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

пример

boxchart(xgroupdata,ydata) группирует данные в вектор ydata согласно уникальным значениям в xgroupdata и строит графики каждой группы данных как отдельную прямоугольную диаграмму. xgroupdata определяет положение каждого прямоугольного графика вдоль оси X. ydata должен быть вектором, и xgroupdata должны иметь ту же длину, что и ydata.

пример

boxchart(___,'GroupByColor',cgroupdata) использует цвет для различения прямоугольных графиков. Программа группирует данные в вектор ydata согласно уникальным комбинациям значений в xgroupdata (если задано) и cgroupdata, и строит графики каждой группы данных как отдельную прямоугольную диаграмму. Векторная cgroupdata затем определяет цвет каждого прямоугольного графика. ydata должен быть вектором, и cgroupdata должны иметь ту же длину, что и ydata. Задайте 'GroupByColor' аргумент пары "имя-значение" после любой комбинации входных аргументов в предыдущих синтаксисах.

пример

boxchart(___,Name,Value) задает дополнительные опции графика, используя один или несколько аргументы пары "имя-значение". Для примера можно сравнить медианы выборки с помощью вырезов путем определения 'Notch','on'. Задайте аргументы пары "имя-значение" после всех других входных параметров. Список свойств см. в разделе Свойства BoxChart.

пример

boxchart(ax,___) графики в осях заданные ax вместо в текущую систему координат (gca). Аргумент ax может предшествовать любой комбинации входных аргументов в предыдущих синтаксисах.

пример

b = boxchart(___) возвращает BoxChart объекты. Если вы не задаете cgroupdata, затем b содержит один объект. Если вы это задаете, то b содержит вектор объектов, по одному для каждого уникального значения в cgroupdata. Использование b задать свойства прямоугольных графиков после их создания. Список свойств см. в разделе Свойства BoxChart.

Примеры

свернуть все

Создайте прямоугольный график из вектора возрастов. Используйте прямоугольный график, чтобы визуализировать распределение возрастов.

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

load patients
boxchart(Age)
ylabel('Age (years)')

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

Средний возраст пациента 39 лет показан как линия внутри коробки. Нижний и верхний квартили 32 и 44 лет показаны в виде нижнего и верхних краев коробки, соответственно. Усы или линии, которые простираются ниже и выше коробки, имеют конечные точки, которые соответствуют самым молодым и самым старым пациентам. Самому молодому пациенту 25 лет, а самому старшему 50 лет. Набор данных не содержит выбросов, которые были бы представлены маленькими кругами.

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

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

Создайте магический квадрат с 10 строками и 10 столбцами.

Y = magic(10)
Y = 10×10

    92    99     1     8    15    67    74    51    58    40
    98    80     7    14    16    73    55    57    64    41
     4    81    88    20    22    54    56    63    70    47
    85    87    19    21     3    60    62    69    71    28
    86    93    25     2     9    61    68    75    52    34
    17    24    76    83    90    42    49    26    33    65
    23     5    82    89    91    48    30    32    39    66
    79     6    13    95    97    29    31    38    45    72
    10    12    94    96    78    35    37    44    46    53
    11    18   100    77    84    36    43    50    27    59

Создайте прямоугольный график для каждого столбца магического квадрата. Каждый столбец имеет сходное медианное значение (вокруг 50). Однако первые пять столбцов Y имеют большие межквартильные области значений, чем последние пять столбцов Y. Межквартильная область значений является расстоянием между верхним квартилем (верхний край коробки) и нижним квартилем (нижнее ребро коробки).

boxchart(Y)
xlabel('Column')
ylabel('Value')

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

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

boxchart(Y')
xlabel('Row')
ylabel('Value')

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

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

Считайте набор данных о цунами в рабочую область как таблицу. Набор данных включает информацию о землетрясениях, а также о других причинах цунами. Отображение первых восьми строк, показывающих столбцы месяца, причины и величины землетрясения таблицы.

tsunamis = readtable('tsunamis.xlsx');
tsunamis(1:8,["Month","Cause","EarthquakeMagnitude"])
ans=8×3 table
    Month          Cause           EarthquakeMagnitude
    _____    __________________    ___________________

     10      {'Earthquake'    }            7.6        
      8      {'Earthquake'    }            6.9        
     12      {'Volcano'       }            NaN        
      3      {'Earthquake'    }            8.1        
      3      {'Earthquake'    }            4.5        
      5      {'Meteorological'}            NaN        
     11      {'Earthquake'    }              9        
      3      {'Earthquake'    }            5.8        

Создайте таблицу earthquakes, который содержит данные по цунами, вызванным землетрясениями.

unique(tsunamis.Cause)
ans = 8x1 cell
    {0x0 char                  }
    {'Earthquake'              }
    {'Earthquake and Landslide'}
    {'Landslide'               }
    {'Meteorological'          }
    {'Unknown Cause'           }
    {'Volcano'                 }
    {'Volcano and Landslide'   }

idx = contains(tsunamis.Cause,'Earthquake');
earthquakes = tsunamis(idx,:);

Сгруппировать величины землетрясения по месяцу, в котором произошел соответствующий цунами. Для каждого месяца отображается отдельный прямоугольный график. Для примера, boxchart использует четвёртую, пятую, и восьмую величины землетрясений, а также другие, чтобы создать третий прямоугольный график, которая соответствует третьему месяцу.

boxchart(earthquakes.Month,earthquakes.EarthquakeMagnitude)
xlabel('Month')
ylabel('Earthquake Magnitude')

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

Заметьте, что, поскольку значения месяца являются числовыми, линейка оси X также является числовой.

Для получения более описательных имен месяцев преобразуйте earthquakes.Month столбец в categorical переменная.

monthOrder = ["Jan","Feb","Mar","Apr","May","Jun","Jul", ...
    "Aug","Sep","Oct","Nov","Dec"];
namedMonths = categorical(earthquakes.Month,1:12,monthOrder);

Создайте те же прямоугольные графики, что и прежде, но используйте categorical переменная namedMonths вместо числовых значений месяцев. Линейка оси X теперь категориальна, и порядок категорий в namedMonths определяет порядок прямоугольных графиков.

boxchart(namedMonths,earthquakes.EarthquakeMagnitude)
xlabel('Month')
ylabel('Earthquake Magnitude')

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

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

Загрузите patients набор данных. The Age и Diastolic переменные содержат возраст и диастолический уровень артериального давления 100 пациентов.

load patients

Сгруппировать пациентов в пять возрастных интервалы. Найдите минимальный и максимальный возраст, а затем разделите область значений между ними на пятилетние интервалы. Отобразите значения в Age переменная при помощи discretize функция. Используйте имена интервалов в bins. Результат groupAge переменная является categorical переменная.

min(Age)
ans = 25
max(Age)
ans = 50
binEdges = 25:5:50;
bins = {'late 20s','early 30s','late 30s','early 40s','late 40s+'};
groupAge = discretize(Age,binEdges,'categorical',bins);

Создайте прямоугольный график для каждой возрастной группы. Каждый прямоугольный график показывает значения диастолического артериального давления пациентов в этой группе.

boxchart(groupAge,Diastolic)
xlabel('Age Group')
ylabel('Diastolic Blood Pressure')

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

Используйте две сгруппированные переменные, чтобы сгруппировать данные и расположить и окрасить получившиеся прямоугольные графики.

Загрузите образец файла TemperatureData.csv, которая содержит среднесуточные температуры с января 2015 года по июль 2016 года. Считайте файл в таблицу.

tbl = readtable('TemperatureData.csv');

Преобразуйте tbl.Month переменная к categorical переменная. Задайте порядок категорий.

monthOrder = {'January','February','March','April','May','June','July', ...
    'August','September','October','November','December'};
tbl.Month = categorical(tbl.Month,monthOrder);

Создайте коробчатые графики, показывающие распределение температур в течение каждого месяца каждого года. Задайте tbl.Month как позиционная сгруппированная переменная. Задайте tbl.Year как сгруппированная переменная при помощи 'GroupByColor' аргумент пары "имя-значение". Заметьте, что tbl не содержит данных за некоторые месяцы 2016 года.

boxchart(tbl.Month,tbl.TemperatureF,'GroupByColor',tbl.Year)
ylabel('Temperature (F)')
legend

Figure contains an axes. The axes contains 2 objects of type boxchart. These objects represent 2015, 2016.

На этом рисунке можно легко сравнить распределение температур для одного конкретного месяца в течение нескольких лет. Например, можно увидеть, что в 2016 году температура в феврале варьировалась гораздо больше, чем в 2015 году.

Создайте прямоугольные графики и постройте график средних значений над прямоугольными графиками с помощью hold on.

Загрузите patients набор данных. Преобразование SelfAssessedHealthStatus в порядковый categorical переменная, поскольку категории Poor, Fair, Good, и Excellent иметь естественный порядок.

load patients
healthOrder = {'Poor','Fair','Good','Excellent'};
SelfAssessedHealthStatus = categorical(SelfAssessedHealthStatus, ...
    healthOrder,'Ordinal',true);

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

meanWeight = groupsummary(Weight,SelfAssessedHealthStatus,'mean');

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

boxchart(SelfAssessedHealthStatus,Weight)
hold on
plot(meanWeight,'-o')
hold off
legend(["Weight Data","Weight Mean"])

Figure contains an axes. The axes contains 2 objects of type boxchart, line. These objects represent Weight Data, Weight Mean.

Используйте вырезы, чтобы определить, значительно ли отличаются медианные значения друг от друга.

Загрузите patients набор данных. Разделите пациентов в зависимости от их местоположения. Для каждой группы пациентов создайте прямоугольный график их весов. Задайте 'Notch','on' так что каждая коробка включает сужающуюся, заштрихованную область, называемую выемкой. Прямоугольные графики, вырезы которых не перекрываются, имеют различные медианы на уровне 5% значимости.

load patients
boxchart(categorical(Location),Weight,'Notch','on')
ylabel('Weight (lbs)')

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

В этом примере три выемки перекрываются, показывая, что три медианы веса существенно не отличаются.

Отобразите соседнюю пару прямоугольных графиков с помощью tiledlayout и nexttile функций.

Загрузите patients набор данных. Преобразование Smoker в categorical переменная с описательными именами категорий Smoker и Nonsmoker а не 1 и 0.

load patients
Smoker = categorical(Smoker,logical([1 0]),{'Smoker','Nonsmoker'});

Создайте мозаику 2 на 1 графике размещения используя tiledlayout функция. Создайте первый набор осей ax1 в нем по вызову nexttile функция. В первом наборе осей отобразите два коробчатых графиков значений сестрического артериального давления, одна для курильщиков, а другая для некурящих. Создайте второй набор осей ax2 внутри размещения мозаичного графика вызовом nexttile функция. Во втором наборе осей делайте то же самое для диастолического артериального давления.

tiledlayout(1,2)

% Left axes
ax1 = nexttile;
boxchart(ax1,Systolic,'GroupByColor',Smoker)
ylabel(ax1,'Systolic Blood Pressure')
legend

% Right axes
ax2 = nexttile;
boxchart(ax2,Diastolic,'GroupByColor',Smoker)
ylabel(ax2,'Diastolic Blood Pressure')
legend

Figure contains 2 axes. Axes 1 contains 2 objects of type boxchart. These objects represent Smoker, Nonsmoker. Axes 2 contains 2 objects of type boxchart. These objects represent Smoker, Nonsmoker.

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

Загрузите patients набор данных. Преобразование Gender и Smoker на categorical переменные. Задайте описательные имена категорий Smoker и Nonsmoker а не 1 и 0.

load patients
Gender = categorical(Gender);
Smoker = categorical(Smoker,logical([1 0]),{'Smoker','Nonsmoker'});

Объедините Gender и Smoker переменные в одну сгруппированную переменную cgroupdata. Создайте коробчатые графики, показывающие распределение уровня диастолического артериального давления для каждой пары пола и статуса курения. b является вектором BoxChart Объекты, по одному для каждой группы данных.

cgroupdata = Gender.*Smoker;
b = boxchart(Diastolic,'GroupByColor',cgroupdata)
b = 
  4x1 BoxChart array:

  BoxChart
  BoxChart
  BoxChart
  BoxChart

legend('Location','southeast')

Figure contains an axes. The axes contains 4 objects of type boxchart. These objects represent Female Smoker, Female Nonsmoker, Male Smoker, Male Nonsmoker.

Обновите цвет третьего прямоугольного графика при помощи SeriesIndex свойство. Обновление SeriesIndex свойство изменяет как цвет грани коробки, так и цвет маркера выбросов.

b(3).SeriesIndex = 6;

Figure contains an axes. The axes contains 4 objects of type boxchart. These objects represent Female Smoker, Female Nonsmoker, Male Smoker, Male Nonsmoker.

Составьте прямоугольный график из данных об отключении степени со многими выбросами и облегчите их визуальное различение путем изменения свойств BoxChart объект. Найдите индексы для записей выбросов.

Считайте данные об отключении степени в рабочую область как таблицу. Отображение первых нескольких строк таблицы.

outages = readtable('outages.csv');
head(outages)
ans=8×6 table
       Region           OutageTime        Loss     Customers     RestorationTime            Cause       
    _____________    ________________    ______    __________    ________________    ___________________

    {'SouthWest'}    2002-02-01 12:18    458.98    1.8202e+06    2002-02-07 16:50    {'winter storm'   }
    {'SouthEast'}    2003-01-23 00:49    530.14    2.1204e+05                 NaT    {'winter storm'   }
    {'SouthEast'}    2003-02-07 21:15     289.4    1.4294e+05    2003-02-17 08:14    {'winter storm'   }
    {'West'     }    2004-04-06 05:44    434.81    3.4037e+05    2004-04-06 06:10    {'equipment fault'}
    {'MidWest'  }    2002-03-16 06:18    186.44    2.1275e+05    2002-03-18 23:23    {'severe storm'   }
    {'West'     }    2003-06-18 02:49         0             0    2003-06-18 10:54    {'attack'         }
    {'West'     }    2004-06-20 14:39    231.29           NaN    2004-06-20 19:16    {'equipment fault'}
    {'West'     }    2002-06-06 19:28    311.86           NaN    2002-06-07 00:51    {'equipment fault'}

Создайте BoxChart b объекта от outages.Customers значения, которые указывают, сколько клиентов было затронуто каждым отключением степени. boxchart отбрасывает записи с NaN значения.

b = boxchart(outages.Customers);
ylabel('Number of Customers')

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

График содержит много выбросов. Чтобы лучше их увидеть, дрожать выбросы и менять стиль маркера выбросов. Когда вы устанавливаете JitterOutliers свойство BoxChart объект к 'on'программное обеспечение случайным образом смещает маркеры выбросов горизонтально так, что они вряд ли перекроются идеально. Значения и вертикальные положения выбросов не изменяются.

b.JitterOutliers = 'on';
b.MarkerStyle = '.';

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

Теперь вы можете легче увидеть распределение выбросов.

Чтобы найти индексы выбросов, используйте isoutlier функция. Задайте 'quartiles' метод вычисления выбросов, чтобы соответствовать boxchart определение выбросов. Используйте индексы, чтобы создать outliers таблица, которая содержит подмножество outages данные. Заметьте, что isoutlier определяет 96 выбросов.

idx = isoutlier(outages.Customers,'quartiles');
outliers = outages(idx,:);
size(outliers,1)
ans = 96

Из-за всех выбросов, квартили коробчатого графика трудно увидеть. Чтобы проверить их, измените пределы оси Y.

ylim([0 4e5])

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

Входные параметры

свернуть все

Выборочные данные, заданная в виде числового вектора или матрицы.

  • Если ydata является матрицей, тогда boxchart создает прямоугольный график для каждого столбца ydata.

  • Если ydata является вектором, и вы не задаете xgroupdata или cgroupdata, затем boxchart создает один прямоугольный график.

  • Если ydata является вектором, и вы задаете xgroupdata или cgroupdata, затем boxchart создает прямоугольный график для каждой уникальной комбинации значений в xgroupdata и cgroupdata.

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

Сгруппированная переменная, заданная как числовой или категориальный вектор. xgroupdata должны иметь ту же длину, что и вектор ydata; вы не можете задать xgroupdata когда ydata является матрицей.

boxchart группирует данные в ydata согласно уникальным комбинациям значений в xgroupdata и cgroupdata. Функция создает прямоугольный график для каждой группы данных и позиционирует каждый прямоугольный график в соответствующей xgroupdata значение. По умолчанию, boxchart вертикально ориентирует прямоугольные графики и отображает xgroupdata значения вдоль оси X. Вы можете изменить ориентацию прямоугольного графика при помощи Orientation свойство.

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

Цветовая сгруппированная переменная, заданный как числовой вектор, категориальный вектор, логический вектор, строковые массивы, вектор символов или массив ячеек векторов символов. cgroupdata должны иметь ту же длину, что и вектор ydata; вы не можете задать cgroupdata когда ydata является матрицей.

boxchart группирует данные в ydata согласно уникальным комбинациям значений в xgroupdata и cgroupdata. Функция создает прямоугольный график для каждой группы данных и присваивает один и тот же цвет группам с одинаковыми cgroupdata значение.

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

Целевые оси, заданные как Axes объект. Если вы не задаете оси, то boxchart использует текущую систему координат (gca).

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

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

Пример: boxchart([rand(10,4); 4*rand(1,4)],'BoxFaceColor',[0 0.5 0],'MarkerColor',[0 0.5 0]) создает коробчатые графики с зелеными коробками и зелеными выбросами, если применимо.

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

Цвет коробки, заданный как триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя.

Для пользовательского цвета укажите триплет 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'

Пример: b = boxchart(rand(10,1),'BoxFaceColor','red')

Пример: b.BoxFaceColor = [0 0.5 0.5];

Пример: b.BoxFaceColor = '#EDB120';

Выбросы стиль, заданный как один из опций, перечисленных в этой таблице.

ЗначениеОписание
'o'Круг
'+'Плюс знак
'*'Звездочка
'.'Точка
'x'Крест
'_'Горизонтальная линия
'|'Вертикальная линия
'square' или 's'Квадрат
'diamond' или 'd'Алмаз
'^'Направленный вверх треугольник
'v'Нисходящий треугольник
'>'Треугольник , указывающий вправо
'<'Треугольник , указывающий влево
'pentagram' или 'p'Пятиконечная звезда (пентаграмма)
'hexagram' или 'h'Шестиконечная звезда (гексаграмма )
'none'Маркеров нет

Пример: b = boxchart([rand(10,1);2],'MarkerStyle','x')

Пример: b.MarkerStyle = 'x';

Перемещение маркера выбросов, заданное как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

Если вы задаете JitterOutliers свойство к 'on', затем boxchart случайным образом перемещает маркеры выбросов вдоль XData направление, которое поможет вам различать выбросы, которые имеют сходные ydata значения. Для получения примера смотрите Визуализация и Поиск Выбросов.

Пример: b = boxchart([rand(20,1);2;2;2],'JitterOutliers','on')

Пример: b.JitterOutliers = 'on';

Среднее отображение сравнения, заданное как 'on' или 'off', или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства как логическое значение. Значение сохранено в виде логического значения on/off типа matlab.lang.OnOffSwitchState.

Если вы задаете Notch свойство к 'on', затем boxchart создает коническую, затененную область вокруг каждой медианы. Прямоугольные графики, вырезы которых не перекрываются, имеют различные медианы на уровне 5% значимости. Для получения дополнительной информации смотрите Прямоугольную диаграмму (Прямоугольный график).

Выемки могут простираться за пределы нижнего и верхнего квартилей.

Пример: b = boxchart(rand(10,2),'Notch','on')

Пример: b.Notch = 'on';

Ориентация прямоугольных графиков, заданная как 'vertical' или 'horizontal'. По умолчанию прямоугольные графики ориентированы вертикально, так что ydata статистика выровнена по оси Y. Независимо от ориентации, boxchart сохраняет ydata значения в YData свойство BoxChart объект.

Пример: b = boxchart(rand(10,1),'Orientation','horizontal')

Пример: b.Orientation = 'horizontal';

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

свернуть все

Прямоугольные графики, возвращенные как вектор BoxChart объекты. b содержит одну BoxChart объект для каждого уникального значения в cgroupdata. Дополнительные сведения см. в разделе Свойства BoxChart.

Подробнее о

свернуть все

Прямоугольная диаграмма (прямоугольный график)

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

  • Линия внутри каждой коробки является медианой выборки. Вы можете вычислить значение медианы, используя median функция.

  • Верхние и нижние ребра каждой коробки являются верхним и нижним квартилями, соответственно. Расстояние между верхними и нижними ребрами является межквартильной областью значений (IQR).

    Для получения дополнительной информации о том, как вычисляются квартили, смотрите quantile Алгоритмы (Statistics and Machine Learning Toolbox), где верхний квартиль соответствует квантилю 0,75, а нижний квартиль соответствует квантилю 0,25. Как использовать quantile функция должна иметь лицензию Statistics and Machine Learning Toolbox™.

  • Выбросы - это значения, которые находятся более чем на 1,5· IQR от верхней или нижней части коробки. По умолчанию, boxchart отображает каждые выбросы с помощью 'o' символ. Вычисление выбросов сопоставимо с расчетом isoutlier функция со 'quartiles' способ.

  • Усы являются линиями, которые простираются выше и ниже каждой коробки. Один усик соединяет верхний квартиль с nonoutlier maximum (максимальное значение, которое не является выбросами), а другой соединяет нижний квартиль с nonoutlier minimum (минимальное значение, которое не является выбросами).

  • Вырезы помогают вам сравнить медианы выборки между несколькими прямоугольными графиками. Когда вы задаете 'Notch','on', boxchart функция создает коническую, заштрихованную область вокруг каждой медианы. Прямоугольные графики, вырезы которых не перекрываются, имеют различные медианы на уровне 5% значимости. Уровень значимости основан на нормальном допущении распределения, но среднее сравнение является достаточно устойчивым для других распределений.

    Верхние и нижние ребра области выемки соответствуют m+(1.57IQR)/n и m(1.57IQR)/n, соответственно, где m - медиана, IQR - межквартильная область значений, а n - количество точек данных, исключая NaN значения.

Example box charts, with labels for the summary statistics

Совет

  • Можно добавить два типа всплывающих подсказок к BoxChart объект: по одному для каждого прямоугольного графика и по одному для каждых выбросов. Общая всплывающая подсказка появляется на невыбросы максимальном значении независимо от того, где вы нажимаете на коробку графика.

    Example box chart, with two outlier data tips and a general data tip

    Примечание

    Отображаемая Num Points значение включает NaN значений в соответствующем ydata, но boxchart отбрасывает NaN значения перед вычислением статистики прямоугольных графиков.

  • Вы можете использовать datatip функция для добавления дополнительных всплывающих подсказок к BoxChart объект, но индексация всплывающих подсказок отличается от других графиков. boxchart сначала присваивает индексы прямоугольным графикам, а затем присваивает индексы выбросам. Для примера, если a BoxChart b объекта отображает два прямоугольных графиков и один выброс, datatip(b,'DataIndex',3) создает всплывающую подсказку в точке выбросов.

См. также

Функции

Свойства

Введенный в R2020a