Patch Properties

Внешний вид и поведение закрашенной фигуры

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

p = patch;
c = p.CData;
p.CDataMapping = 'scaled';

Цвет

расширить все

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

Чтобы создать другой цвет для каждой грани, задайте CData или FaceVertexCData свойство как массив, содержащий по одному цвету на грань или по одному цвету на вершину. Цвета могут быть интерполированы из цветов окружающих вершин каждой грани, или они могут быть равномерными. Для интерполированных цветов задайте это свойство следующим 'interp'. Для равномерных цветов задайте это свойство следующим 'flat'. Если вы задаете 'flat' и другой цвет для каждой вершины, цвет первой заданной вершины определяет цвет грани.

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

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; для примера, [0.4 0.6 0.7].

  • Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0 на F. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' являются эквивалентными.

Название цветаКраткое имяТриплет 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'

Краевые цвета, заданные как одно из значений в этой таблице. Цвет ребра по умолчанию является черным со значением [0 0 0]. Если несколько многоугольников совместно используют ребро, первый нарисованный полигон управляет отображаемым цветом ребра.

ЗначениеОписаниеРезультат

Триплет RGB, шестнадцатеричный цветовой код или название цвета

Один цвет для всех ребер. Для получения дополнительной информации см. следующую таблицу.

'flat'

Разный цвет для каждого ребра. Используйте вершины цвета, чтобы задать цвет ребра, который следует за ним. Сначала необходимо задать CData или FaceVertexCData как массив, содержащий по одному цвету на вершину. Цвет ребра зависит от порядка, в котором вы задаете вершины.

'interp'

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

'none'Не отображается ребер.

Не отображается ребер.

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

Закрашенная фигура данных цвета, заданный как один цвет для всей закрашенной фигуры, один цвет на грань или один цвет на вершину.

То, как patch интерпретирует функции CData зависит от типа предоставляемых данных. Задайте CData в одной из следующих форм:

  • Числовые значения, которые масштабируются для линейного преобразования в текущую палитру.

  • Целочисленные значения, которые используются непосредственно в качестве индексов в текущей палитре.

  • Массивы триплетов RGB. Триплеты RGB не отображаются в текущую палитру, но интерпретируются как определенные цвета.

Следующие схемы иллюстрируют размерности CData относительно массивов в XData, YData, и ZData свойства.

Эти схемы иллюстрируют использование индексированного цвета.

Эти схемы иллюстрируют использование истинного цвета. Для истинного цвета требуется либо один триплет RGB, либо массив триплетов RGB.

Если CData содержит NaNs, затем patch не окрашивает грани.

Альтернативный метод определения закрашенных фигур использует Faces, Vertices, и FaceVertexCData свойства.

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

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

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

Если вы хотите использовать индексированные цвета, задайте FaceVertexCData в одной из следующих форм:

  • Для одного цвета всей закрашенной фигуры используйте одно значение.

  • Для одного цвета на грань используйте вектор-столбец m-на-1, где m - количество строк в Faces свойство.

  • Для интерполированного цвета грани используйте вектор-столбец m на 1, где m - количество строк в Vertices свойство.

Если вы хотите использовать истинные цвета, задайте FaceVertexCData в одной из следующих форм:

  • Для одного цвета для всех граней задайте трехэлементный вектор-строку, который задает триплет RGB. Когда вы делаете это, вы также должны задать FaceColor на 'flat' и EdgeColor к значению, отличному от 'flat' или 'interp'.

  • Для одного цвета на лицо используйте массив m на 3 из триплетов RGB, где m - количество строк в Faces свойство.

  • Для интерполированного цвета грани используйте массив m на 3, где m - количество строк в Vertices свойство.

Следующая схема иллюстрирует различные формы FaceVertexCData свойство для закрашенной фигуры, имеющего восемь граней и девять вершин. The CDataMapping свойство определяет, как MATLAB интерпретирует FaceVertexCData свойство при указании индексированных цветов.

Прямое или масштабированное отображение цветовых данных, заданное как 'scaled' (по умолчанию) или 'direct'. The CData и FaceVertexCData свойства содержат цветовые данные. Если вы используете истинную спецификацию цвета для CData или FaceVertexCData, тогда это свойство не имеет никакого эффекта.

  • 'direct' - Интерпретируйте значения как индексы в текущую палитру. Значения с десятичным фрагментом фиксируются к ближайшему нижнему целому числу.

    • Если значения имеют тип double или single, затем значения 1 или меньше сопоставить с первым цветом в палитре. Значения, равные или больше длины карты палитры до последнего цвета в палитре.

    • Если значения имеют тип uint8, uint16, uint32, uint64 , int8, int16, int32, или int64, затем значения 0 или меньше сопоставить с первым цветом в палитре. Значения, равные или больше длины карты палитры до последнего цвета в палитре (или до пределов области значений типа).

    • Если значения имеют тип logical, затем значения 0 сопоставить с первым цветом в палитре и значениями 1 сопоставить со вторым цветом в палитре.

  • 'scaled' - Масштабируйте значения в диапазоне между минимальным и максимальным пределами цвета. The CLim свойство осей содержит пределы цвета.

Прозрачность

расширить все

Прозрачность лица, заданная в качестве одного из следующих значений:

  • Скаляр в области значений [0,1] - Используйте равномерную прозрачность по всем граням. Значение 1 полностью непрозрачен и 0 полностью прозрачен. Эта опция не использует значения прозрачности в FaceVertexAlphaData свойство.

  • 'flat' - Используйте разную прозрачность для каждой грани на основе значений в FaceVertexAlphaData свойство. Сначала необходимо задать FaceVertexAlphaData свойство как вектор, содержащий одно значение прозрачности на грань или вершину. Значение прозрачности в первой вершине определяет прозрачность для всей грани.

  • 'interp' - Используйте интерполированную прозрачность для каждой грани на основе значений в FaceVertexAlphaData свойство. Сначала необходимо задать FaceVertexAlphaData свойство как вектор, содержащий одно значение прозрачности на вершину. Прозрачность изменяется между каждой гранью путем интерполяции значений в вершинах.

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

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

  • 'flat' - Используйте разную прозрачность для каждого ребра на основе значений в FaceVertexAlphaData свойство. Сначала необходимо задать FaceVertexAlphaData свойство как вектор, содержащий одно значение прозрачности на грань или вершину. Значение прозрачности в первой вершине определяет прозрачность для ребра.

  • 'interp' - Используйте интерполированную прозрачность для каждого ребра на основе значений в FaceVertexAlphaData свойство. Сначала необходимо задать FaceVertexAlphaData свойство как вектор, содержащий одно значение прозрачности на вершину. Измените прозрачность между каждым ребром путем интерполяции значений в вершинах.

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

  • Для равномерной прозрачности между всеми гранями или ребрами задайте скалярное значение. Затем установите FaceAlpha или EdgeAlpha свойство к 'flat'.

  • Для различной прозрачности для каждой грани или ребра задайте m-by-1 вектор, где m количество граней. Затем установите FaceAlpha или EdgeAlpha свойство к 'flat'. Чтобы определить количество граней, запросите количество строк в Faces свойство.

  • Для интерполированной прозрачности между каждой гранью или ребром задайте n-by-1 вектор, где n - количество вершин. Затем установите FaceAlpha или EdgeAlpha свойство к 'interp'. Чтобы определить количество вершин, запросите количество строк в Vertices свойство.

The AlphaDataMapping свойство определяет, как закрашенная фигура интерпретирует FaceVertexAlphaData значения свойств.

Примечание

Если на FaceAlpha и EdgeAlpha свойства оба установлены в скалярные значения, тогда закрашенная фигура не использует FaceVertexAlphaData значения.

Интерпретация FaceVertexAlphaData значения, заданные в качестве одного из следующих значений:

  • 'none' - Интерпретируйте значения как значения прозрачности. Значение 1 или больше полностью непрозрачно, значение 0 или менее полностью прозрачно, а значение от 0 до 1 полупрозрачно.

  • 'scaled' - Отобразите значения в альфа-карту рисунка. Минимальные и максимальные альфа- пределы осей определяют значения альфа- данных, которые сопоставлены с первым и последним элементами альфа-карты, соответственно. Для примера, если альфа- пределы [3 5], затем значения альфа- данных меньше или равны 3 сопоставить с первым элементом в альфа-карте. Значения альфа- данных, большие или равные 5 сопоставить с последним элементом в альфа-карте. The ALim свойство осей содержит альфа- пределы. The Alphamap свойство рисунка содержит альфа-карту.

  • 'direct' - Интерпретируйте значения как индексы в альфа-карту рисунка. Значения с десятичным фрагментом фиксируются к ближайшему нижнему целому числу.

    • Если значения имеют тип double или single, затем значения 1 или менее сопоставляются с первым элементом альфа-карты. Значения, равные или большие длины альфа-карты последнего элемента альфа-карты.

    • Если значения имеют целый тип, значения 0 или менее сопоставляются с первым элементом альфа-карты. Значения, равные или большие длины альфа-карты последнего элемента альфа-карты (или до пределов области значений типа). Целые типы uint8, uint16, uint32, uint64 , int8, int16, int32, и int64.

    • Если значения имеют тип logical, затем значения 0 сопоставляются с первым элементом в альфа-карте и значения 1 сопоставляются со вторым элементом в альфа-карте.

Стили линий

расширить все

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

Стиль линииОписаниеРезультирующая линия
'-'Сплошная линия

'--'Штриховая линия

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

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

'none'Нет линииНет линии

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

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

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

'round''miter''chamfer'

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

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

  • 'on' - Заточка вертикальных и горизонтальных линий для устранения неравномерности внешнего вида.

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

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

Примечание

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

Маркеры

расширить все

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

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

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

Цвет контура маркера, заданный как 'auto', 'flat', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. The 'auto' опция использует тот же цвет, что и EdgeColor свойство. The 'flat' опция использует 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'

'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', 'flat', триплет RGB, шестнадцатеричный цветовой код, название цвета или краткое имя. The 'auto' опция использует тот же цвет, что и Color свойство для осей. The 'flat' опция использует 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'

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

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

Пример: [0.3 0.2 0.1]

Пример: 'green'

Пример: '#D2F9A7'

Данные

расширить все

Вершинное соединение, определяющее каждую грань, заданное как вектор или матрица, определяющая вершины в Vertices свойство, которое должно быть соединено для формирования каждой грани. The Faces и Vertices свойства обеспечивают альтернативный способ задать закрашенную фигуру, который может быть более эффективным, чем использование XData, YData, и ZData координаты в большинстве случаев.

Каждая строка в массиве граней обозначает соединения для одной грани и количество элементов в этой строке, которые не NaN определяет количество вершин для этой грани. Поэтому m-на-n Faces массив задает m граней с каждой до n вершин.

Для примера рассмотрим следующие закрашенные фигуры. Он состоит из восьми треугольных граней, заданных девятью вершинами. Соответствующий Faces и Vertices свойства показаны справа от закрашенной фигуры. Обратите внимание, как некоторые грани делятся вершинами с другими гранями. Для примера - пятая вершина (V5) используется шесть раз, один раз по лицам один, два, три, шесть, семь и восемь. Без совместного использования вершин эта же закрашенная фигура требует 24 определения вершин.

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

Координаты вершины, заданные как вектор или матрица, определяющие (x, y, z) координаты каждой вершины. The Faces и Vertices свойства обеспечивают альтернативный способ задать закрашенную фигуру, который может быть более эффективным, чем использование XData, YData, и ZData координаты в большинстве случаев. Смотрите Faces свойство для описания использования данных вершины.

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

Координаты X вершин закрашенной фигуры, заданные в виде вектора или матрицы. Если XData является матрицей, тогда каждый столбец представляет x-координаты одной грани закрашенной фигуры. В этом случае XData, YData, и ZData должны иметь одинаковые размерности.

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

Y-координаты, определяющие закрашенную фигуру, заданные как вектор или матрица. Если YData является матрицей, тогда каждый столбец представляет y-координаты одной грани закрашенной фигуры. В этом случае XData, YData, и ZData должны иметь одинаковые размерности.

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

Z-координаты вершин закрашенной фигуры, заданные в виде вектора или матрицы. Если ZData является матрицей, тогда каждый столбец представляет z-координаты одной грани закрашенной фигуры. В этом случае XData, YData, и ZData должны иметь одинаковые размерности.

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

Нормали

расширить все

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

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

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

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

  • 'auto' - The patch функция вычисляет вершины нормали, когда вы добавляете свет к сцене.

  • 'manual' - Используйте вершинные нормальные данные, заданные VertexNormals свойство. Присвоение значений VertexNormals наборы свойств VertexNormalsMode на 'manual'.

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

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

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

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

  • 'auto' - The patch функция вычисляет нормали граней, когда вы добавляете свет к сцене.

  • 'manual' - Используйте нормальные данные лица, заданные FaceNormals свойство. Присвоение значений FaceNormals наборы свойств FaceNormalsMode на 'manual'.

Подсветка

расширить все

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

  • 'flat' - Нанесите свет равномерно на каждую грань. Используйте это значение для просмотра граненых объектов.

  • 'gouraud' - Варьируйте свет по граням. Вычислите свет в вершинах и затем линейно интерполируйте свет через грани. Используйте это значение для просмотра изогнутых поверхностей.

  • 'none' - Не наносить на грани свет от световых объектов.

Чтобы добавить светлый объект к осям, используйте light функция.

Примечание

The 'phong' значение удалено. Использование 'gouraud' вместо этого.

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

  • 'reverselit' - Освещает грань, как если бы вершина нормали указывала в сторону камеры.

  • 'unlit' - Не освещайте лицо.

  • 'lit' - Освещение грани в соответствии с вершиной normal.

Используйте это свойство для различения внутренних и внешних поверхностей объекта. Для получения примера см. Освещение задней поверхности.

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

  • 'flat' - Равномерно нанесите свет на каждую кромку.

  • 'none' - Не применяйте свет от световых объектов к ребрам.

  • 'gouraud' - Вычислите свет в вершинах, а затем линейно интерполируйте через ребра.

Примечание

The 'phong' значение удалено. Использование 'gouraud' вместо этого.

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

The AmbientLightColor свойство для осей задает цвет окружающего света. Цвет одинаковый для всех объектов в осях.

Пример: 0.5

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

Сила диффузного света, заданная в виде скалярного значения в области значений [0,1]. Диффузный свет - это неспецифическое отражение от световых объектов в осях.

Пример: 0.3

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

Сила зеркального отражения, заданная как скалярное значение в области значений [0,1]. Зеркальными отражениями являются яркие пятна на поверхности от световых объектов в осях.

Пример: 0.3

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

Экспансивность зеркального отражения, заданная как скалярное значение, больше 0. SpecularExponent управляет размером пятна зеркального отражения. Большие значения дают меньше зеркального отражения.

Большинство материалов имеют экспоненты в области значений 5 на 20.

Пример: 17

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

Цвет зеркальных отражений, заданный как скаляр между 0 и 1 включительно.

  • 0 - Цвет зеркального отражения зависит как от цвета объекта, от которого он отражается, так и от цвета источника света.

  • 1 - Цвет зеркального отражения зависит только от цвета или источника света (то есть светового объекта Color свойство).

Вклады от цвета источника света и цвета закрашенной фигуры к цвету зеркального отражения варьируются линейно для значений между 0 и 1.

Пример: 0.5

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

Легенда

расширить все

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

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

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

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

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

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

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

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

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

расширить все

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

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

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

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

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

Это свойство применяется только к закрашенным фигурам с закрепленными всплывающими подсказками.

Примечание

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

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

Примечание

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

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

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

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

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

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

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

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

  • Значение 'on' зажимает части объекта, которые находятся вне пределов осей.

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

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

Коллбэки

расширить все

Коллбэк по клику мыши, заданный как одно из следующих значений:

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

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

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

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

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

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

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

Примечание

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

расширить все

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

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

  • Обратный коллбэк running - это актуальный на данный момент коллбэк.

  • Обратный коллбэк interrupting - это коллбэк, который пытается прервать текущий коллбэк.

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

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

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

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

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

Примечание

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

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

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

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

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

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

  • Обратный коллбэк running - это актуальный на данный момент коллбэк.

  • Обратный коллбэк interrupting - это коллбэк, который пытается прервать текущий коллбэк.

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

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

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

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

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

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

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

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

  • 'on' - Запуск ButtonDownFcn коллбэк Patch объект. Если вы определили ContextMenu Свойство активируйте контекстное меню.

  • 'off' - Инициируйте коллбэки для ближайшего предка Patch объект, который имеет одно из следующего:

    • HitTest значение свойства установлено в 'on'

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

Примечание

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

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

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

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

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

Родитель/ребенок

расширить все

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

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

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

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

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

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

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

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

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

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

расширить все

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

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

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

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

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

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

расширить все

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

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