barh

Постройте гистограмму горизонтально

Синтаксис

barh(y)
barh(x,y)
barh(...,width)
barh(...,style)
barh(...,'color')
barh(...,'PropertyName',PropertyValue,...)
barh(ax,...)
b = barh(...)

Описание

График barh отображает значения в векторе или матрице как горизонтальные планки.

barh(y) чертит одну горизонтальную планку для каждого элемента в y. Если y является матрицей, barh группирует панели, произведенные элементами в каждой строке. Диапазоны шкал оси Y от 1 до length(y), когда y является вектором и 1 к size(y,1), который является количеством строк, когда y является матрицей. Значения в y могут быть числовыми или значения длительности.

barh(x,y) чертит панель для каждого элемента в y в местоположениях, заданных в x, где x является вектором, задающим местоположения вдоль оси Y. Значения местоположения могут быть немонотонными, но не могут содержать дублирующиеся значения. Если y является матрицей, barh группирует элементы каждой строки в y в соответствующих местоположениях в x. Значения в x могут быть числовыми, datetime, длительность или категориальные значения.

barh(...,width) устанавливает относительную ширину панели и управляет разделением панелей в группе. width по умолчанию является 0.8, поэтому если вы не задаете x, панели в группе имеют небольшое разделение. Если width является 1, панели в группе касаются друг друга. Значение width должно быть скаляром.

barh(...,style) задает стиль панелей. Задайте style как одно из этих значений:

  • 'grouped' отображает m группы n панелей, где m является количеством строк, и n является количеством столбцов в y. Каждая группа содержит одну панель для каждого столбца в y. Это - значение по умолчанию.

  • 'stacked' отображает одну панель для каждой строки в y. Длина панели является суммой элементов в строке. Каждая панель является разноцветной с цветами, соответствующими отличным элементам и показывающими относительный вклад, который каждый элемент строки делает к полной сумме. Функция barh обрабатывает все векторы как вектор-столбцы. Если y является вектором длины n, то barh отображает n панели.

  • 'histc' отображает график в формате гистограммы, в котором панели касаются друг друга.

  • 'hist' также отображает график в формате гистограммы, но сосредотачивает каждую панель по значению деления, вместо того, чтобы заставить панели охватить значения деления, как опция histc делает.

Примечание

Когда вы используете или hist или опцию histc, вы не можете также использовать синтаксис параметра/значения. Эти две опции создают объекты Patch, а не объекты Bar.

barh(...,'color') отображения все панели с помощью цвета, заданного однобуквенным сокращением 'r', 'g', 'b', 'c', 'm', 'y', 'k' или 'w'.

barh(...,'PropertyName',PropertyValue,...) устанавливает именованное свойство или свойства к заданным значениям. Вы не можете задать свойства, когда hist или опции histc используются. Смотрите Свойства панели для получения дополнительной информации.

barh(ax,...) графики в оси ax вместо в текущую систему координат (gca).

b = barh(...) возвращает вектор объектов Bar. Когда y является матрицей, barh создает один объект Bar для каждого столбца в y. Каждый объект Bar включает набор панелей, которые имеют тот же цвет. Используйте b, чтобы изменить свойства для всех панелей в объекте Bar.

Примеры

свернуть все

Создайте горизонтальный график векторных данных.

y = [57,91,105,123,131,150,...
     170,203,226.5,249,281.4];
figure
barh(y)

barh чертит одну горизонтальную планку для каждого элемента в y.

Задайте ширину панели к 0,4.

y = [57,91,105,123,131,150,...
     170,203,226.5,249,281.4];

figure;
width = 0.4;
barh(y,width);

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

x = [2,4];
y = [1,2,3,4;...
     5,6,7,8];

figure;
subplot(2,2,1); 
barh(x,y,'grouped'); % groups by row
title('Grouped Style')

subplot(2,2,2); 
barh(x,y,'stacked'); % stacks values in each row together
title('Stacked Style')

subplot(2,2,3); 
barh(x,y,'hist'); % centers bars over x values
title('hist Style')

subplot(2,2,4); 
barh(x,y,'histc'); % spans bars over x values
title('histc Style')

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

y = [57,91,105,123,131,150,...
     170,203,226.5,249,281.4]; 
figure
barh(y,'r')

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

c = categorical({'apples','pears','oranges'});
prices = [1.23 0.99 2.3];
barh(c,prices)

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

y = [57,91,105,123,131,150,...
     170,203,226.5,249,281.4];

figure
barh(y,'FaceColor',[0,0.5,0.5],...
       'EdgeColor',[0,0,0.9],...
       'LineWidth',2)

Задайте x и y как векторы данных.

x = 1900:10:2000;
y = [57,91,105,123,131,150,...
     170,203,226.5,249,281.4];

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

figure
barh(x,y)

Загрузите набор данных count.dat, который возвращает матрицу с тремя столбцами, count. Сохраните y как первые шесть строк count.

load count.dat
y = count(1:6,:);

Создайте горизонтальный график матричного y.

figure 
barh(y)

По умолчанию barh группирует панели строкой.

Загрузите набор данных, count.dat, который возвращает матрицу с тремя столбцами, count. Задайте y как первые четыре строки количества.

load count.dat
y = count(1:4,:);

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

h = barh(y,'LineStyle',':');

Используйте указатели в h, чтобы установить различные значения свойств для каждого ряда панели. Измените цвет поверхности первого ряда панели к голубому цвету путем установки свойства FaceColor на cyan. Выберите цвет поверхности для третьего ряда панели с помощью триплета RGB.

Начиная с R2014b, вы можете использовать запись через точку для того, чтобы задать свойства. Если вы используете более раннюю версию, используйте вместо этого функцию set.

h(1).FaceColor = 'cyan';
h(3).FaceColor = [0,0.5,0.5];

Загрузите набор данных count.dat, который возвращает матрицу с тремя столбцами, count. Сохраните y как первые шесть строк count.

load count.dat
y = count(1:6,:);

Создайте горизонтальный график y и установите basevalue на 25.

figure
barh(y,'BaseValue',25)

Расширенные возможности

Представлено до R2006a