Histogram2 Properties

Внешний вид и поведение Histogram2

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

h = histogram2(randn(10,1),randn(10,1));
c = h.NumBins;
h.NumBins = [4 7];

Интервалы

развернуть все

Количество интервалов в каждой размерности в виде двухэлементного вектора положительных целых чисел, [nX nY]. Если вы не задаете NumBins, затем histogram2 автоматически вычисляет сколько интервалов, чтобы использовать на основе значений в X и Y.

Пример: histogram2(X,Y,[10 20])

Пример: h.NumBins = [10 20]

Ширина интервалов в каждой размерности в виде двухэлементного вектора. Первый элемент в векторе дает ширину интервалов в x - размерность, и второй элемент дает ширину интервалов в y - размерность.

Когда вы задаете BinWidth, затем histogram2 может использовать максимум 1 024 интервалов (210) по каждому измерению. Если вместо этого заданная ширина интервала требует большего количества интервалов, то histogram2 использует большую ширину интервала, соответствующую максимальному количеству интервалов.

Пример: histogram2(X,Y,'BinWidth',[5 10]) интервалы использования с размером 5 в x- размерность и размер 10 в y- размерность.

Границы интервала в x - размерность в виде вектора. Xedges(1) первое ребро первого интервала в x - размерность и Xedges(end) внешний край последнего интервала.

Значение [X(k),Y(k)] находится в (i,j)интервал th, если Xedges(i)X(k) <Xedges(i+1) и Yedges(j)Y(k) <Yedges(j+1). Последние интервалы в каждой размерности также включают последнее (внешнее) ребро. Например, [X(k),Y(k)] попадает в iинтервал th в последней строке, если Xedges(end-1)X(k)Xedges(end) и Yedges(i)Y(k) <Yedges(i+1).

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

Границы интервала в y - размерность в виде вектора. Yedges(1) первое ребро первого интервала в y - размерность и Yedges(end) внешний край последнего интервала.

Значение [X(k),Y(k)] находится в (i,j)интервал th, если Xedges(i)X(k) <Xedges(i+1) и Yedges(j)Y(k) <Yedges(j+1). Последние интервалы в каждой размерности также включают последнее (внешнее) ребро. Например, [X(k),Y(k)] попадает в iинтервал th в последней строке, если Xedges(end-1)X(k)Xedges(end) и Yedges(i)Y(k) <Yedges(i+1).

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

Интервал ограничивает в x- размерность в виде двухэлементного вектора, [xbmin,xbmax]. Вектор указывает на первые и последние границы интервала в x- размерность.

histogram2 только отображает на графике данные, которые находятся в пределах пределов интервала включительно, Data(Data(:,1)>=xbmin & Data(:,1)<=xbmax).

Режим выбора для интервала ограничивает в x- размерность в виде 'auto' или 'manual'. Значением по умолчанию является 'auto', так, чтобы пределы интервала автоматически настроили к данным вдоль оси X.

Если вы явным образом задаете любой XBinLimits или XBinEdges, затем XBinLimitsMode установлен автоматически в 'manual'. В этом случае задайте XBinLimitsMode как 'auto' перемасштабировать пределы интервала данным.

Интервал ограничивает в y- размерность в виде двухэлементного вектора, [ybmin,ybmax]. Вектор указывает на первые и последние границы интервала в y- размерность.

histogram2 только отображает на графике данные, которые находятся в пределах пределов интервала включительно, Data(Data(:,2)>=ybmin & Data(:,2)<=ybmax).

Режим выбора для интервала ограничивает в y- размерность в виде 'auto' или 'manual'. Значением по умолчанию является 'auto', так, чтобы пределы интервала автоматически настроили к данным вдоль оси Y.

Если вы явным образом задаете любой YBinLimits или YBinEdges, затем YBinLimitsMode установлен автоматически в 'manual'. В этом случае задайте YBinLimitsMode как 'auto' перемасштабировать пределы интервала данным.

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

ЗначениеОписание
'auto''auto' по умолчанию алгоритм выбирает, ширина интервала, чтобы покрыть данные располагаются и показывают форму базового распределения.
'scott'Правило Скотта оптимально, если данные близко к тому, чтобы быть совместно нормально распределенным. Это правило подходит для большинства других распределений, также. Это использует размер интервала [3.5*std(X(:))*numel(X)^(-1/4), 3.5*std(Y(:))*numel(Y)^(-1/4)].
'fd'Правило Фридмена—Диакониса менее чувствительно к выбросам в данных и может более подойти для данных с распределениями с тяжелым хвостом. Это использует размер интервала [2*IQR(X(:))*numel(X)^(-1/4), 2*IQR(Y(:))*numel(Y)^(-1/4)], где IQR межквартильный размах.
'integers'Целочисленное правило полезно с целочисленными данными, когда это создает интервал для каждой пары целых чисел X и Y. Это использует ширину интервала 1 для каждой размерности и помещает границы интервала на полпути между целыми числами. Чтобы постараться не случайно создавать слишком много интервалов, можно использовать это правило, чтобы создать предел 1 024 интервалов (210). Если область значений данных для любой размерности больше 1024, то целочисленное правило использует более широкие интервалы вместо этого.

Примечание

Если вы устанавливаете NumBinsXBinEdges YBinEdges BinWidth , или BinLimits свойство, затем BinMethod свойство установлено в 'manual'.

Пример: histogram2(X,Y,'BinMethod','integers') создает двумерную гистограмму с интервалами, сосредоточенными на целых числах.

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

Пример: histogram2(X,Y,'ShowEmptyBins','on') включает отображение пустых интервалов.

Данные

развернуть все

Данные, чтобы распределить среди интервалов в виде матрицы размера m- 2. X и Y входные параметры к histogram2 соответствуйте столбцам в Data, то есть, Data(:,1) X(:) и Data(:,2) Y(:).

histogram2 игнорирует весь NaN значения. Точно так же histogram2 игнорирует Inf и -Inf значения, если границы интервала явным образом не задают Inf или -Inf как граница интервала. Несмотря на то, что NaNInf, и -Inf значения обычно не строятся, они все еще включены в вычисления нормализации, которые включают общее количество элементов данных, таких как 'probability'.

Если вы изменяете значения в Data свойство histogram2 объект, затем границы интервала автоматически не обновляются. Чтобы повторно вычислить интервалы, настройте связанное с интервалом свойство, такое как BinMethod или NumBins.

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

Это свойство доступно только для чтения.

Значения интервала, возвращенные как числовая матрица. Если Normalization 'count', затем (i,j)запись th в Values указывает, что интервал значит интервал, ребрами x которого является [Xedges(i), Xedges(i+1)] и чьими ребрами y является [Yedges(j), Yedges(j+1)].

В зависимости от значения Normalization, Values свойство вместо этого может содержать нормированный вариант количества интервалов.

Схема включения интервала различных пронумерованных интервалов в Values, а также их относительная ориентация к x - оси и y - ось,

Например, (1,1) интервал включает значения, которые падают на первое ребро в каждой размерности, и последний интервал в правом нижнем включает значения, которые падают на любое из его ребер.

Тип нормализации в виде одного из значений в таблице.

ЗначениеОписание
'count'

Схема нормализации по умолчанию. Высота каждой панели является количеством наблюдений в каждом интервале. Сумма высот панели равна numel(X) и numel(Y).

'probability'

Высота каждой панели является относительным количеством наблюдений, (Количество наблюдений в интервале / Общее количество наблюдений). Суммой высот панели является 1.

'countdensity'

Высота каждой панели (Количество наблюдений в интервале) / (область интервала). Объем (Высота * область) каждой панели является количеством наблюдений в интервале. Сумма объемов панели равна numel(X) и numel(Y).

'pdf'

Оценка функции плотности вероятности. Высота каждой панели, (Количество наблюдений в интервале) / (Общее количество наблюдений * область интервала). Объем каждой панели является относительным количеством наблюдений. Суммой объемов панели является 1.

'cumcount'

Высота каждой панели является совокупным числом наблюдений в каждом интервале и всех предыдущих интервалах и в x и в размерностях y. Высота последней панели равна numel(X) и numel(Y).

'cdf'

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

Пример: histogram2(X,Y,'Normalization','pdf') строит оценку функции плотности вероятности для X и Y.

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

counts должна быть матрица размера [nbinsX nbinsY] так, чтобы это указало, что интервал значит каждый интервал.

Количеством интервалов в x - размерность является length(XBinEdges)-1, и количеством интервалов в y - размерность является length(YBinEdges)-1.

По сравнению с Values свойство, BinCounts не нормирован. Если Normalization 'count', затем Values и BinCounts эквивалентны.

Пример: histogram2('XBinEdges',-1:1,'YBinEdges',-2:2,'BinCounts',[1 2 3 4; 5 6 7 8])

Режим выбора для количества интервалов в виде 'auto' или 'manual'. Значением по умолчанию является 'auto', так, чтобы количество интервалов было автоматически вычислено из DataXBinEdges , и YBinEdges.

Если вы задаете BinCounts, затем BinCountsMode автоматически установлен в 'manual'. Точно так же, если вы задаете Data, затем BinCountsMode автоматически установлен в 'auto'.

Цвет и моделирование

развернуть все

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

Значение по умолчанию 'bar3' отображает гистограмму с помощью 3-D панелей.

Пример: histogram2(X,Y,'DisplayStyle','tile') строит гистограмму как прямоугольный массив мозаик.

Панель гистограммы окрашивает в виде одного из этих значений:

  • 'none' — Панели не заполнены.

  • 'flat' — Цвета панели меняются в зависимости от высоты. Панели с различной высотой имеют различные цвета. Цвета выбраны из палитры осей или фигуры.

  • 'auto' — Цвет панели выбран автоматически (по умолчанию).

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

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

Если вы задаете DisplayStyle как 'stairs', затем histogram2 не использует FaceColor свойство.

Пример: histogram2(X,Y,'FaceColor','g') создает график гистограммы с зелеными панелями.

Цвет обводки гистограммы в виде одного из этих значений:

  • 'none' — Ребра не чертятся.

  • 'auto' — Цвет каждого ребра выбран автоматически.

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

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

Пример: histogram2(X,Y,'EdgeColor','r') создает график гистограммы с красными ребрами панели.

Прозрачность панелей гистограммы в виде скалярного значения между 0 и 1 включительно. histogram2 использует ту же прозрачность во всех панелях гистограммы. Значение 1 означает полностью непрозрачный и 0 означает абсолютно прозрачная (невидимая операция).

Пример: histogram2(X,Y,'FaceAlpha',0.5) создает график двумерной гистограммы с полупрозрачными панелями.

Прозрачность ребер панели гистограммы в виде скалярного значения между 0 и 1 включительно. Значение 1 означает полностью непрозрачный и 0 означает абсолютно прозрачная (невидимая операция).

Пример: histogram2(X,Y,'EdgeAlpha',0.5) создает график двумерной гистограммы с полупрозрачными ребрами панели.

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

ЗначениеОписание
'lit'

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

Это - значение по умолчанию когда DisplayStyle 'bar3'.

'flat'

Панели гистограммы не освещены автоматически. В присутствии других световых объектов эффект освещения универсален через поверхности панели.

'none'

Панели гистограммы не освещены автоматически, и световые сигналы не влияют на панели гистограммы.

FaceLighting может только быть 'none' когда DisplayStyle 'tile'.

Пример: histogram2(X,Y,'FaceLighting','none') выключает подсветку панелей гистограммы.

Стиль линии в виде одной из опций перечислен в этой таблице.

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

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

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

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

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

Ширина панели обрисовывает в общих чертах в виде положительного значения в модулях точки. Один пункт равен 1/72 дюйма.

Пример: 1.5

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

Ряды индексируют в виде целого числа, больше, чем или равный 0. Это свойство полезно для переприсвоения цветов поверхности нескольких Histogram2 объекты так, чтобы они совпадали друг с другом. По умолчанию, SeriesIndex свойство Histogram2 объект является номером, который соответствует его порядку создания, запускающегося в 1.

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

MATLAB автоматически обновляет цвет поверхности Histogram2 возразите, когда вы измените его SeriesIndex, или когда вы изменяете ColorOrder свойство на осях. Однако следующие условия должны быть верными для изменений, чтобы оказать любое влияние:

  • FaceColor свойство на Histogram2 объект установлен в 'auto'.

  • SeriesIndex свойство на Histogram2 объект больше 0.

  • NextSeriesIndex свойство на объекте осей больше 0.

Легенда

развернуть все

Текст используется легендой в виде вектора символов. Текст появляется рядом со значком histogram2.

Пример: 'Text Description'

Для многострочного текста создайте вектор символов с помощью sprintf с символом новой строки \n.

Пример: sprintf('line one\nline two')

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

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

  • Если вы не задаете текст как входной параметр к legend функция, затем легенда использует текст в DisplayName свойство. По умолчанию, DisplayName вектор символов, представляющий имена переменных x, и входные данные y раньше создавали гистограмму. Если один или оба из входных параметров не имеют имен переменных, то DisplayName isempty.

Если DisplayName свойство не содержит текста, затем легенда генерирует вектор символов. Вектор символов имеет форму 'dataN', где N номер, присвоенный histogram2 основанному на объектах на его местоположении в списке записей легенды.

Если вы редактируете в интерактивном режиме вектор символов в существующей легенде, то MATLAB обновляет DisplayName свойство к отредактированному вектору символов.

Это свойство доступно только для чтения.

Управляйте для включения или, исключая объект от легенды, возвращенной как Annotation объект. Установите базовый IconDisplayStyle свойство к одному из этих значений:

  • 'on' — Включайте объект в легенду (значение по умолчанию).

  • 'off' — Не включайте объект в легенду.

Например, чтобы исключить графический объект, go, от легенды устанавливает IconDisplayStyle свойство к 'off'.

go.Annotation.LegendInformation.IconDisplayStyle = 'off';

В качестве альтернативы можно управлять элементами в легенде с помощью legend функция. Укажите первый входной аргумент в качестве вектора включаемых графических объектов. Если вы не задаете существующий графический объект в первом входном параметре, то это не появляется в легенде. Однако графические объекты, добавленные к осям после легенды, создаются, действительно появляются в легенде. Рассмотрите создание легенды после создания всех графиков избежать дополнительных элементов.

Интерактивность

развернуть все

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

  • 'on' — Отобразите объект.

  • 'off' — Скройте объект, не удаляя его. Вы по-прежнему можете получать доступ к свойствам невидимого объекта.

Содержимое всплывающей подсказки в виде DataTipTemplate объект. Можно управлять содержимым, которое появляется во всплывающей подсказке путем изменения свойств базового DataTipTemplate объект. Для списка свойств смотрите DataTipTemplate Properties.

Для примера изменения всплывающих подсказок смотрите, Создают Пользовательские всплывающие подсказки.

Примечание

DataTipTemplate объект не возвращен findobj или findall, и это не копируется copyobj.

Контекстное меню в виде ContextMenu объект. Используйте это свойство для отображения контекстного меню при щелчке правой кнопкой мыши по объекту. Создайте контекстное меню с помощью uicontextmenu функция.

Примечание

Если PickableParts свойство установлено в 'none' или если HitTest свойство установлено в 'off', затем контекстное меню не появляется.

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

  • 'on' — Выбранный. Если вы кликаете по объекту, когда в режиме редактирования графика, то MATLAB устанавливает свой Selected свойство к 'on'. Если SelectionHighlight свойство также установлено в 'on', затем MATLAB отображает маркеры выделения вокруг объекта.

  • 'off' — Не выбранный.

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

  • 'on' — Отобразите маркеры выделения когда Selected свойство установлено в 'on'.

  • 'off' — Никогда не отображайте маркеры выделения, даже когда Selected свойство установлено в 'on'.

Коллбэки

развернуть все

Обратный вызов по клику мыши, заданный как одно из следующих значений:

  • Указатель на функцию

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

  • Вектор со строкой символов, являющийся действительной командой или функцией MATLAB, которая оценивается в базовом рабочем пространстве (не рекомендуется)

Используйте это свойство для выполнения кода при клике по объекту. Если вы задаете это свойство с помощью указателя на функцию, то MATLAB передает два аргумента функции обратного вызова при выполнении обратного вызова:

  • Объект, по которому кликают — свойства Access объекта, по которому кликают, из функции обратного вызова.

  • Данные о событиях — Пустой аргумент. Замените его на символ тильды (~) в функциональном определении, чтобы указать, что этот аргумент не используется.

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

Примечание

Если PickableParts свойство установлено в 'none' или если HitTest свойство установлено в 'off', затем этот коллбэк не выполняется.

Функция создания объекта в виде одного из этих значений:

  • Указатель на функцию.

  • Массив ячеек, в котором первым элементом является указатель на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Определение Коллбэка.

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB создает объект. MATLAB инициализирует все значения свойств прежде, чем выполнить CreateFcn 'callback'. Если вы не задаете CreateFcn свойство, затем MATLAB выполняет функцию создания по умолчанию.

Установка CreateFcn свойство на существующем компоненте не оказывает влияния.

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

Функция удаления объекта в виде одного из этих значений:

  • Указатель на функцию.

  • Массив ячеек, в котором первым элементом является указатель на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Определение Коллбэка.

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

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

Контроль выполнения обратного вызова

развернуть все

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

Это свойство определяет, может ли рабочий коллбэк быть прерван. Существует два состояния обратного вызова:

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

Каждый раз, когда MATLAB вызывает обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов (если он существует). Interruptible свойство объекта, владеющего рабочим коллбэком, определяет, позволено ли прерывание.

  • Значение 'on' позволяет другим коллбэкам прерывать коллбэки объекта. Прерывание происходит на следующем этапе, где MATLAB обрабатывает очередь, такой как тогда, когда существует drawnowфигураФигура пользовательского интерфейсаgetframewaitfor, или pause команда.

    • Если рабочий коллбэк содержит одну из тех команд, то MATLAB останавливает выполнение коллбэка в той точке и выполняет прерывание обратного вызова. MATLAB возобновляет выполнение обратного вызова при завершении прерывания.

    • Если рабочий коллбэк не содержит одну из тех команд, то MATLAB закончил выполнять коллбэк без прерывания.

  • Значение 'off' блоки все попытки прерывания. BusyAction свойство объекта, владеющего прерыванием обратного вызова, определяет, отбрасывается ли прерывание обратного вызова или помещается в очередь.

Примечание

Прерывание и выполнение обратного вызова происходят по-разному в таких ситуациях:

  • Если прерыванием обратного вызова является DeleteFcnCloseRequestFcn или SizeChangedFcn коллбэк, затем прерывание происходит независимо от Interruptible значение свойства.

  • Если рабочий коллбэк является выполняющимся в данным моментом waitfor функция, затем прерывание происходит независимо от Interruptible значение свойства.

  • Timer объекты выполняются согласно расписанию независимо от Interruptible значение свойства.

Когда происходит прерывание, MATLAB не сохраняет состояние свойств или изображения. Например, объект, возвращенный gca или gcf команда может измениться, когда другой коллбэк выполняется.

Постановка в очередь коллбэка в виде 'queue' или 'cancel'. BusyAction свойство определяет, как MATLAB обрабатывает выполнение прерываний обратного вызова. Существует два состояния обратного вызова:

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

Каждый раз, когда MATLAB инициирует обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов. Interruptible свойство объекта, владеющего рабочим коллбэком, определяет, разрешено ли прерывание. Если прерывание не разрешено, то BusyAction свойство объекта, владеющего прерыванием обратного вызова, определяет, отбрасывается ли это или вставило очередь. Это возможные значения BusyAction свойство:

  • 'queue' — Помещает прерывание обратного вызова в очередь, чтобы быть обработанным после рабочего выполнения концов коллбэка.

  • 'cancel' — Не выполняет прерывание обратного вызова.

Возможность осуществить захват кликов мыши, заданная как одно из следующих значений:

  • 'visible' — Захватите клики мыши только, когда видимый. Visible свойство должно быть установлено в 'on'. HitTest свойство определяет если Histogram2 объект отвечает на нажатие кнопки или если предок делает.

  • 'none' — Не может захватить клики мыши. Нажатие на Histogram2 возразите передает нажатие кнопки объекту позади него в текущем представлении окна рисунка. HitTest свойство Histogram2 объект не оказывает влияния.

Ответ на захватил клики мыши в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно истине и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

  • 'on' — Инициируйте ButtonDownFcn коллбэк Histogram2 объект. Если вы задали ContextMenu свойство, затем вызовите контекстное меню.

  • 'off' — Инициируйте коллбэки для самого близкого предка Histogram2 объект, который имеет один из них:

    • HitTest набор свойств к 'on'

    • PickableParts набор свойств к значению, которое позволяет предку захватить клики мыши

Примечание

PickableParts свойство определяет если Histogram2 объект может захватить клики мыши. Если это не может, то HitTest свойство не оказывает влияния.

Это свойство доступно только для чтения.

Состояние Deletion, возвращенное как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

MATLAB устанавливает BeingDeleted свойство к 'on' когда DeleteFcn коллбэк начинает выполнение. BeingDeleted свойство остается установленным в 'on' пока объект компонента больше не существует.

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

Родительский элемент/Дочерний элемент

развернуть все

Родительский элемент в виде Axes, Group, или Transform объект.

Дочерние элементы, возвращенные как пустой GraphicsPlaceholder массив или DataTip objectArray. Используйте это свойство просмотреть список всплывающих подсказок, которые построены на графике.

Вы не можете добавить или удалить дочерние элементы, использующие Children свойство. Чтобы добавить дочерний элемент в этот список, установите Parent свойство DataTip возразите против объекта диаграммы.

Видимость указателя на объект в Children свойство родительского элемента в виде одного из этих значений:

  • 'on' — Указатель на объект всегда отображается.

  • 'off' — Указатель на объект невидим в любом случае. Эта опция полезна для предотвращения непреднамеренных изменений другой функцией. Установите HandleVisibility к 'off' временно скрыть указатель во время выполнения этой функции.

  • 'callback' — Указатель на объект отображается из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки. Эта опция блокирует доступ к объекту в командной строке, но разрешает функциям обратного вызова получать доступ к нему.

Если объект не перечислен в Children свойство родительского элемента, затем функционирует, которые получают указатели на объект путем поиска иерархии объектов, или запрос свойств указателя не может возвратить его. Примеры таких функций включают getfindobjgcagcfgconewplotclaclf, и close функции.

Скрытые указатели на объекты все еще действительны. Установите корневой ShowHiddenHandles свойство к 'on' перечислять все указатели на объект независимо от их HandleVisibility установка свойства.

Идентификаторы

развернуть все

Это свойство доступно только для чтения.

Тип графического объекта, возвращенного как 'histogram2'. Используйте это свойство найти все объекты данного типа в иерархии графического вывода, такие как поиск типа с помощью findobj.

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

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

Если вы работаете в App Designer, создаете публичные или частные свойства в приложении, чтобы осуществлять обмен данными вместо того, чтобы использовать UserData свойство. Для получения дополнительной информации смотрите, Осуществляют обмен данными В рамках Приложений App Designer.

Вопросы совместимости

развернуть все

Не рекомендуемый запуск в R2020a

Введенный в R2015b