hist3

График двумерной гистограммы

Описание

пример

hist3(X) создает график двумерной гистограммы X(:,1) и X(:,2) использование 10 10 равномерно распределенных интервалов. hist3 функционируйте отображает интервалы как 3-D прямоугольные панели, и высота каждой панели указывает на число элементов в интервале.

пример

hist3(X,'Nbins',nbins) задает количество интервалов в каждой размерности гистограммы. Этот синтаксис эквивалентен hist3(X,nbins).

пример

hist3(X,'Ctrs',ctrs) задает центры интервалов в каждой размерности гистограммы. Этот синтаксис эквивалентен hist3(X,ctrs).

hist3(X,'Edges',edges) задает ребра интервалов в каждой размерности.

пример

hist3(___,Name,Value) задает графические свойства с помощью одного или нескольких аргументов пары "имя-значение" в дополнение к входным параметрам в предыдущих синтаксисах. Например, 'FaceAlpha',0.5 создает полупрозрачную гистограмму. Для списка свойств смотрите Surface Properties.

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

пример

N = hist3(___) возвращает число элементов в X то падение каждого интервала. Этот синтаксис не создает гистограмму.

[N,c] = hist3(___) также возвращает центры интервала. Этот синтаксис не создает гистограмму.

Примеры

свернуть все

Загрузите выборочные данные.

load carbig

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

X = [MPG,Weight];
hist3(X)
xlabel('MPG')
ylabel('Weight')

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

Создайте двумерную гистограмму на интервалах, заданных центрами интервала, и считайте число элементов в каждом интервале.

Загрузите выборочные данные.

load carbig

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

X = [MPG,Weight];
hist3(X,'Ctrs',{0:10:50 2000:500:5000})
xlabel('MPG')
ylabel('Weight')

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

Считайте число элементов в каждом интервале.

N = hist3(X,'Ctrs',{0:10:50 2000:500:5000})
N = 6×7

     0     0     0     0     0     0     0
     0     0     2     3    16    26     6
     6    34    50    49    27    10     0
    70    49    11     3     0     0     0
    29     4     2     0     0     0     0
     1     0     0     0     0     0     0

Загрузите выборочные данные.

load carbig

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

X = [MPG,Weight];
hist3(X,'CDataMode','auto','FaceColor','interp')
xlabel('MPG')
ylabel('Weight')

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

Загрузите выборочные данные.

load carbig

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

X = [MPG,Weight];
hist3(X,'CdataMode','auto')
xlabel('MPG')
ylabel('Weight')
colorbar
view(2)

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

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

Загрузите выборочные данные.

load carbig

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

X = [MPG,Weight];
hist3(X,'Nbins',[7 7])
xlabel('MPG')
ylabel('Weight')

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

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

s = findobj(gca,'Type','Surface');
s.FaceAlpha = 0.65;

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

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

Загрузите seamount набор данных (подводная гора является подводной горой). Набор данных состоит из набора долготы (x) и широта (y) местоположения и соответствующий seamount вертикальные изменения (z) измеренный в тех координатах. Этот пример использует x и y чертить двумерную гистограмму.

load seamount

Чертите двумерную гистограмму.

hist3([x,y])
xlabel('Longitude')
ylabel('Latitude')
hold on

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

Считайте число элементов в каждом интервале.

N = hist3([x,y]);

Сгенерируйте сетку, чтобы чертить 2D спроектированное представление интенсивности при помощи pcolor.

N_pcolor = N';
N_pcolor(size(N_pcolor,1)+1,size(N_pcolor,2)+1) = 0;
xl = linspace(min(x),max(x),size(N_pcolor,2)); % Columns of N_pcolor
yl = linspace(min(y),max(y),size(N_pcolor,1)); % Rows of N_pcolor

Чертите карту интенсивности при помощи pcolor. Установите z-уровень карты интенсивности просматривать гистограмму и карту интенсивности вместе.

h = pcolor(xl,yl,N_pcolor);
colormap('hot') % Change color scheme 
colorbar % Display colorbar
h.ZData = -max(N_pcolor(:))*ones(size(N_pcolor));
ax = gca;
ax.ZTick(ax.ZTick < 0) = [];
title('Seamount Location Histogram and Intensity Map');

Figure contains an axes. The axes with title Seamount Location Histogram and Intensity Map contains 2 objects of type surface.

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

свернуть все

Данные, чтобы распределить среди интервалов в виде m-by-2 числовую матрицу, где m является количеством точек данных. Соответствующие элементы в X(:,1) и X(:,2) задайте x и координаты y точек 2D данных.

hist3 игнорирует весь NaN значения. Точно так же hist3 игнорирует Inf и –Inf значения, если вы явным образом не задаете Inf или –Inf как граница интервала при помощи edges входной параметр.

Типы данных: single | double

Количество интервалов в каждой размерности в виде двухэлементного вектора из положительных целых чисел. nbins(1) задает количество интервалов в первой размерности и nbins(2) задает количество интервалов во втором измерении.

Пример: [10 20]

Типы данных: single | double

Интервал сосредотачивается в каждой размерности в виде двухэлементного массива ячеек числовых векторов с монотонно неуменьшающимися значениями. ctrs{1} и ctrs{2} позиции центров интервала в первых и вторых измерениях, соответственно.

hist3 строки присвоений X выходить за пределы области значений сетки к интервалам вдоль внешних краев сетки.

Пример: {0:10:100 0:50:500}

Типы данных: cell

Границы интервала в каждой размерности в виде двухэлементного массива ячеек числовых векторов с монотонно неуменьшающимися значениями. edges{1} и edges{2} положения границ интервала в первых и вторых измерениях, соответственно.

Значение X(k,:) находится в (i,j)интервал th, если edges{1}(i) ≤ X(k,1) < edges{1}(i+1) и edges{2}(j) ≤ X(k,2) < edges{2}(j+1).

Последние интервалы в каждой размерности также включают последнее (внешнее) ребро. Например, X(k,:) попадает в (I,j)интервал th, если edges{1}(I–1) ≤ X(k,1) ≤ edges{1}(I) и edges{2}(j) ≤ X(k,2) < edges{2}(j+1), где I длина edges{1}. Кроме того, X(k,:) попадает в (i,J)интервал th, если edges{1}(i) ≤ X(k,1) < edges{1}(i+1) и edges{2}(J–1) ≤ X(k,2) ≤ edges{2}(J), где J длина edges{2}.

hist3 не считает строки X выходить за пределы области значений сетки. Используйте –Inf и Inf в edges включать весь non-NaN значения.

Пример: {0:10:100 0:50:500}

Типы данных: cell

Целевые оси в виде объекта осей. Если вы не задаете Axes объект, затем hist3 функционируйте использует текущую систему координат (gca). Для получения дополнительной информации смотрите Свойства осей графика.

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

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

Пример: hist3(X,'FaceColor','interp','CDataMode','auto') окрашивает панели гистограммы согласно высоте панелей.

Графические свойства, перечисленные здесь, являются только подмножеством. Для полного списка смотрите Surface Properties.

Режим выбора для CData (цвета вершины) в виде разделенной запятой пары, состоящей из 'CDataMode' и одно из этих значений:

  • 'manual' — Используйте вручную заданные значения в CData свойство. Цвет по умолчанию в CData легкое стальное синее соответствие значению триплета RGB [0.75 0.85 0.95].

  • 'auto' — Используйте ZData значения, чтобы выбрать цвета. ZData содержит данные z-координаты для восьми углов каждой панели.

Пример: 'CDataMode','auto'

Цвет линии ребра в виде разделенной запятой пары, состоящей из 'EdgeColor' и одно из этих значений:

  • 'none' — Не чертите ребра.

  • 'flat' — Используйте различный цвет для каждого ребра на основе значений в CData свойство.

  • 'interp' — Используйте интерполированную окраску для каждого ребра на основе значений в CData свойство.

  • Триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название — Использование заданный цвет для всех ребер. Эти значения не используют значения цвета в CData свойство.

Цвет по умолчанию [0 0 0] соответствует черным ребрам.

Триплеты 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'

Вот являются триплеты 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'

Пример: 'EdgeColor','blue'

Столкнитесь с прозрачностью в виде разделенной запятой пары, состоящей из 'FaceAlpha' и одно из этих значений:

  • Скаляр в области значений [0,1] — Используйте универсальную прозрачность через все поверхности. Значение 1 полностью непрозрачно и 0 абсолютно прозрачно. Значения между 0 и 1 являются полупрозрачными. Эта опция не использует значения прозрачности в AlphaData свойство.

  • 'flat' — Используйте различную прозрачность для каждой поверхности на основе значений в AlphaData свойство. Значение прозрачности в первой вершине определяет прозрачность для целой поверхности. Это значение применяется только, когда вы задаете AlphaData свойство и набор FaceColor свойство к 'flat'.

  • 'interp' — Используйте интерполированную прозрачность для каждой поверхности на основе значений в AlphaData свойство. Прозрачность варьируется через каждую поверхность путем интерполяции значений в вершинах. Это значение применяется только, когда вы задаете AlphaData свойство и набор FaceColor свойство к 'interp'.

  • 'texturemap' — Преобразуйте данные в AlphaData так, чтобы это соответствовало поверхности.

Пример: 'FaceAlpha',0.5

Цвет поверхности в виде разделенной запятой пары, состоящей из 'FaceColor' и одно из этих значений:

  • 'flat' — Используйте различный цвет для каждой поверхности на основе значений в CData свойство.

  • 'interp' — Используйте интерполированную окраску для каждой поверхности на основе значений в CData свойство.

  • 'none' — Не чертите поверхности.

  • 'texturemap' — Преобразуйте цветные данные в CData так, чтобы это соответствовало поверхности.

  • Триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название — Использование заданный цвет для всех поверхностей. Эти значения не используют значения цвета в 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'

Вот являются триплеты 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'

Пример: 'FaceColor','interp'

Стиль линии в виде разделенной запятой пары, состоящей из 'LineStyle' и одна из опций в этой таблице.

Стиль линииОписаниеПолучившаяся линия
'-'Сплошная линия

'--'Пунктирная линия

':'Пунктирная линия

'-.'Штрих-пунктирная линия

'none'Никакая линияНикакая линия

Пример: 'LineStyle',':'

Ширина линии в виде разделенной запятой пары, состоящей из 'LineWidth' и положительное значение в точках.

Пример: 'LineWidth',0.75

Типы данных: single | double

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

свернуть все

Число элементов в X то падение каждого интервала, возвращенного как числовая матрица.

Интервал сосредотачивается в каждой размерности, возвращенной как двухэлементный массив ячеек числовых векторов. c{1} и c{2} позиции центров интервала в первых и вторых измерениях, соответственно.

Советы

hist3 функция создает двумерную гистограмму, которая является типом объемной поверхностной диаграммы. Можно задать поверхностные свойства с помощью одного или нескольких аргументов пары "имя-значение". Кроме того, можно изменить внешний вид гистограммы путем изменения поверхностных значений свойств после того, как вы создадите гистограмму. Получите указатель объекта подложки при помощи s = findobj(gca,'Type','Surface'), и затем используйте s изменить поверхностные свойства. Для примера смотрите Adjust Graphical Properties. Для списка свойств смотрите Surface Properties.

Альтернативная функциональность

histogram2 функция позволяет вам создать двумерную гистограмму с помощью Histogram2 объект. Можно использовать аргументы пары "имя-значение" histogram2 использовать нормализацию ('Normalization'), настройте ширину интервалов в каждой размерности ('BinWidth'), и отображение гистограмма как прямоугольный массив мозаик вместо 3-D панелей ('DisplayStyle').

Смотрите также

| | | |

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