Line Properties

Внешний вид и поведение линии на графике

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

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

p = plot(1:10);
c = p.Color;
p.Color = 'red';

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

Строка

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

Цвет линии, заданный как триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию [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'

'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'

Пример: 'blue'

Пример: [0 0 1]

Пример: '#0000FF'

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

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

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

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

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

'none'Никакая строкаНикакая строка

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

Стиль углов строки, заданных как 'round', 'miter' или 'chamfer'. Эта таблица иллюстрирует внешний вид различных значений.

'round''miter''chamfer'

Внешний вид опции 'round' может выглядеть по-другому, если свойство Renderer фигуры установлено в 'opengl' вместо 'painters'.

Sharp вертикальные и горизонтальные строки, заданные как 'off' или 'on'.

Если у связанной фигуры есть набор свойств GraphicsSmoothing к 'on' и набор свойств Renderer к 'opengl', то фигура применяет метод сглаживания к графикам. В некоторых случаях этот метод сглаживания может заставить вертикальные и горизонтальные строки казаться неровными в толщине или цвете. Используйте свойство AlignVertexCenters устранить неровный внешний вид.

  • 'off' Не увеличивайте резкость вертикальных или горизонтальных строк. Строки могут казаться неровными в толщине или цвете.

  • 'on' — Увеличьте резкость вертикальных и горизонтальных строк, чтобы устранить неровный внешний вид.

Примечание

У вас должна быть видеокарта, которая поддерживает эту функцию. Чтобы видеть, поддерживается ли функция, вызовите функцию rendererinfo. Если это поддерживается, rendererinfo возвращает значение 1 для info.Details.SupportsAlignVertexCenters.

Маркеры

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

Символ маркера, заданный как одно из значений, перечислен в этой таблице. По умолчанию объект не отображает маркеры. Определение символа маркера добавляет маркеры в каждой точке данных или вершине.

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

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

Примечание

Чтобы видеть маркеры, необходимо также задать символ маркера.

Пример: plot(x,y,'-o','MarkerIndices',[1 5 10]) отображает круговой маркер во-первых, пятые, и десятые точки данных.

Пример: plot(x,y,'-x','MarkerIndices',1:3:length(y)) отображает перекрестный маркер каждые три точки данных.

Пример: plot(x,y,'Marker','square','MarkerIndices',5) отображает один квадратный маркер в пятой точке данных.

Размер маркера, заданный как положительное значение в точках, где 1 точка = 1/72 дюйма.

Цвет контура маркера, заданный как 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Значение по умолчанию 'auto' использует тот же цвет в качестве свойства Color.

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

Цвет заливки маркера, заданный как 'auto', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое название. Опция 'auto' использует тот же цвет в качестве свойства Color родительских осей. Если вы задаете 'auto', и поле графика осей невидимо, цвет заливки маркера является цветом фигуры.

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

Данные декартовой координаты

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

x значения, заданные как вектор.

  • Для 2D графиков, если вы не задаете x значения, затем MATLAB использует индексы YData как x значения для графика. XData и YData должны иметь равные длины.

  • Для 3-D линейных графиков, если вы не задаете x значения, затем MATLAB использует индексы ZData как x значения для графика. XData, YData и ZData должны иметь равные длины.

Пример: [1:10]

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

Режим выбора для XData, заданного как одно из этих значений:

  • 'auto' Используйте индексы значений в YData (или ZData для 3-D графиков).

  • 'manual' — Использовать заданные вручную значения. Чтобы задать значения, установите свойство XData или задайте входной параметр X к функции построения графика.

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения XData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Пример: 'x'

y значения, заданные как вектор. Для 2D графиков XData и YData должны иметь равные длины. Для 3-D линейных графиков XData, YData и ZData должны иметь равные длины.

Пример: [1:10]

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

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения YData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Пример: 'y'

z значения для 3-D линейного графика, заданного как вектор. XData, YData и ZData должны иметь равные длины.

Пример: [1:10]

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

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения ZData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Пример: 'z'

Данные полярной координаты

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

Угловые значения, заданные как вектор. ThetaData и RData должны быть векторами равной длины.

Это свойство применяется только к строкам в полярные оси.

Режим выбора для значения свойства ThetaData, заданного как одно из этих значений:

  • 'auto' Автоматически выберите значение.

  • 'manual' — Используйте заданные значения. Чтобы задать значение, установите свойство ThetaData или задайте входной параметр theta к функции построения графика.

Это свойство применяется только к строкам в полярные оси.

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения ThetaData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Это свойство применяется только к строкам в полярные оси.

Значения радиуса, заданные как вектор. ThetaData и RData должны быть векторами равной длины.

Это свойство применяется только к строкам в полярные оси.

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения RData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Это свойство применяется только к строкам в полярные оси.

Географические координатные данные

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

Значения широты, заданные как вектор. LatitudeData и LongitudeData должны быть векторами равной длины.

Это свойство применяется только к строкам в географические оси.

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения LatitudeData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Это свойство применяется только к строкам в географические оси.

Значения долготы, заданные как вектор. LongitudeData и LatitudeData должны быть векторами равной длины.

Это свойство применяется только к строкам в географические оси.

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

По умолчанию связанная переменная отсутствует, поэтому значение представляет собой пустой вектор символов, ''. Если вы соединяете переменную, то MATLAB сразу не обновляет значения LongitudeData. Для принудительного обновления значения данных, используйте функцию refreshdata.

Примечание

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

Это свойство применяется только к строкам в географические оси.

Легенда

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

Метка Legend, заданная как вектор символов или скаляр строки. Легенда не отображается, пока вы не вызываете команду legend. Если вы не задаете текст, то legend устанавливает метку с помощью формы 'dataN'.

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

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

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

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

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

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

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

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

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

Состояние видимости, заданное в качестве одного из следующих значений:

  • 'on' — Отображать объект.

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

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

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

Примечание

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

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

Примечание

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

Состояние выбора, заданное как одно из следующих значений:

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

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

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

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

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

Усечение объекта к пределам осей, заданным как одно из этих значений:

  • 'on' — Не отображайте части объекта, которые являются вне пределов осей.

  • 'off' Отобразите целый объект, даже если части его появляются вне пределов осей. Части объектной силы появляются вне пределов осей, если вы создаете график, устанавливаете hold on, замораживаете масштабирование оси, и затем создаете объект так, чтобы это было больше, чем исходный график.

Свойство Clipping осей, которое содержит объект, должно быть установлено в 'on'. В противном случае это свойство не имеет никакого эффекта. Для получения дополнительной информации о поведении усечения, смотрите свойство Clipping осей.

Коллбэки

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

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

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

Настройка свойства CreateFcn в существующем компоненте не имеет никакого эффекта.

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

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

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

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

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

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

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

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

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

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

Прерывание обратного вызова, обозначаемое как 'on' или 'off'. Свойство «Прерывание» определяет, можно ли прерывать выполняемый обратный вызов.

Существует два состояния обратного вызова:

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

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

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

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

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

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

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

Примечание

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

  • Если прерывающий обратный вызов является обратным вызовом DeleteFcn, CloseRequestFcn или SizeChangedFcn, то прерывание происходит независимо от значения свойства прерывания.

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

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

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

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

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

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

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

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

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

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

  • 'visible' — Захватите клики мыши, когда видимый. Свойство Visible должно быть установлено в 'on', и необходимо кликнуть по части объекта Line, который имеет заданный цвет. Вы не можете кликнуть элемент, у которого значение связанного свойства цвета установлено на 'none'. Если график содержит маркеры, то целый маркер активируем кликом мыши, если или ребро или заливка имеют заданный цвет. Свойство HitTest определяет, отвечает ли объект Line на нажатие кнопки или если предок делает.

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

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

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

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

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

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

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

Примечание

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

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

Удаление статуса, возврат на 'off' или 'on'. MATLAB задает значение свойства BeingDeleted 'on', когда обратный вызов DeleteFcn начинает выполнение. Значение свойства BeingDeleted остается 'on' до того момента, как объект перестанет существовать.

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

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

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

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

У объекта нет дочерних элементов. Вы не можете задать это свойство.

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

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

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

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

Если объект не указан в свойстве Children родителя, то функции, которые получают указатели на объекты путем поиска иерархии объектов или запросов свойств указателя, не могут вернуть его. Примеры таких функций включают get, findobj, gca, gcf, gco, newplot, cla, clf и функции close.

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

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

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

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

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

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

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

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

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