Контурный график под сетчатой объемной поверхностной диаграммой
meshc(
создает сетчатый график с контурным графиком под ним. Сетчатый график является трехмерной поверхностью, которая имеет твердые ребра цвета и не имеет цветов лица. А графики функций значения в матрице X
,Y
,Z
)Z
как высоты над сеткой в плоскости x - y заданные X
и Y
. Цвета ребер варьируются в зависимости от высот, заданных Z
.
meshc(
создает mesh и контурный график и использует индексы столбцов и строк элементов в Z
)Z
как x - и y - координаты.
meshc(___,
задает дополнительные опции для Name,Value
)meshc
постройте график с использованием одного или нескольких аргументов пары "имя-значение". Задайте опции после всех других входных параметров. Список свойств см. в разделе «Свойства поверхности».
meshc(
графики в осях заданные ax
,___)ax
вместо текущей системы координат. Задайте оси в качестве первого входного параметра.
sc = meshc(___)
возвращает графический массив, который включает объект поверхности графика и объект контура. Использование sc
для изменения mesh и контурных графиков после их создания. Список свойств см. в разделе «Свойства поверхности» и «Свойства контура».
Создайте три матрицы одинакового размера. Затем постройте график как сетчатый график с контурным графиком под. В сетчатый график используются Z
для высоты и цвета.
[X,Y] = meshgrid(-3:.125:3); Z = peaks(X,Y); meshc(X,Y,Z)
Задайте цвета для mesh и контурного графика путем включения четвертого матричного входа C
. Графики используют Z
для высоты и C
для цвета. Задайте цвета с помощью палитры, которая использует одинарные числа для подставки цветов на спектре. Когда вы используете палитру, C
- тот же размер, что и Z
. Добавьте цветовую панель к графику, чтобы показать, как значения данных в C
соответствуют цветам в палитре.
[X,Y] = meshgrid(-3:.125:3); Z = peaks(X,Y); C = X.*Y; meshc(X,Y,Z,C) colorbar
Создать сетчатый график с контурным графиком под ним. Чтобы разрешить дальнейшие изменения, присвойте графический массив, содержащий объекты поверхности и контура, переменной sc
.
[X,Y] = meshgrid(-5:.5:5); Z = Y.*sin(X) - X.*cos(Y); sc = meshc(X,Y,Z);
Индексируйте в sc
для доступа и изменения свойств mesh и контурных графиков после их создания. Доступ к сетчатому графику возможен как sc(1)
и контурный график как sc(2)
. Для примера измените ребро цвета двух графиков путем установки EdgeColor
свойства.
sc(1).EdgeColor = 'r'; sc(2).EdgeColor = 'b';
Контурные линии появляются на минимальном уровне z по умолчанию, но можно изменить местоположение, установив ZLocation
свойство.
Отобразите peaks
набор данных как сетчатый график с контурами на минимальном уровне z. Задайте возвращаемый аргумент при вызове meshc
функцию, чтобы вы могли получить доступ к Contour
объект.
Z = peaks; sc = meshc(Z);
Получите текущую систему координат и удлините верхний предел оси Z до 15
. Затем переместите контуры на максимальный z-уровень.
ax = gca;
ax.ZLim(2) = 15;
sc(2).ZLocation = 'zmax';
X
- x -координатыx -cordinates, заданная в виде матрицы того же размера, что и Z
, или как вектор с длиной n
, где [m,n] = size(Z)
. Если вы не задаете значения для X
и Y
, meshc
использует векторы (1:n)
и (1:m)
.
Когда X
является матрицей, значения должны строго увеличиваться или уменьшаться по одной размерности и оставаться постоянными по другой размерности. Размерность, которая изменяется, должна быть противоположной размерности, которая изменяется в Y
. Вы можете использовать meshgrid
функция для создания X
и Y
матрицы.
Когда X
является вектором, значения должны строго увеличиваться или уменьшаться.
The XData
свойства поверхности и контурных объектов сохраняют x -согласованные .
Пример: X = 1:10
Пример: X = [1 2 3; 1 2 3; 1 2 3]
Пример: [X,Y] = meshgrid(-5:0.5:5)
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
Y
- y -координатыy -cordinates, заданная в виде матрицы того же размера, что и Z
или как вектор с длиной m
, где [m,n] = size(Z)
. Если вы не задаете значения для X
и Y
, meshc
использует векторы (1:n)
и (1:m)
.
Когда Y
является матрицей, значения должны строго увеличиваться или уменьшаться по одной размерности и оставаться постоянными по другой размерности. Размерность, которая изменяется, должна быть противоположной размерности, которая изменяется в X
. Вы можете использовать meshgrid
функция для создания X
и Y
матрицы.
Когда Y
является вектором, значения должны строго увеличиваться или уменьшаться.
The YData
свойства поверхности и контурных объектов сохраняют y -согласованные .
Пример: Y = 1:10
Пример: Y = [1 1 1; 2 2 2; 3 3 3]
Пример: [X,Y] = meshgrid(-5:0.5:5)
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
Z
- z -координатыz -координаты, заданные как матрица. Z
должно иметь не менее двух строк и двух столбцов.
Z
задает высоту сетчатого графика в каждом x - y - координате. Если вы не задаете цвета, то Z
также задает цвета ребер сетки.
The ZData
свойства поверхности и контурных объектов сохраняют z -согласованные .
Пример: Z = [1 2 3; 4 5 6]
Пример: Z = sin(x) + cos(y)
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
C
- Цветовой массивm
-by- n
-by- 3
массив триплетов RGBЦветовой массив, заданный как m
-by- n
матрица индексов палитры или как m
-by- n
-by- 3
массив триплетов RGB, где Z
является m
-by- n
.
Чтобы использовать цвета палитры, задайте C
как матрица. Для каждой точки сетки на поверхности сетки, C
указывает цвет в палитре. The CDataMapping
свойство объекта поверхности управляет тем, как значения в C
соответствуют цветам в палитре.
Чтобы использовать цвета truecolor, задайте C
как массив триплетов RGB.
Для получения дополнительной информации смотрите Различия между Палитрами и Труеколором.
The CData
свойство объекта surface сохраняет цветовой массив. Для дополнительного контроля окрашивания поверхности используйте FaceColor
и EdgeColor
свойства.
ax
- Ось для построения графикаГрафическое изображение осей, заданное как axes
объект. Если вы не задаете оси, то meshc
графики в текущей системе координат.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
meshc(X,Y,Z,'EdgeColor','red')
создает mesh с красными линиями.Примечание
Перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойств поверхности».
'MeshStyle'
- Ребра для отображения'both'
(по умолчанию) | 'row'
| 'column'
Ребра для отображения, заданные как 'both'
, 'row'
, или 'column'
.
'EdgeColor'
- Цвет краевой линии[0 0 0]
(по умолчанию) | 'none'
| 'flat'
| 'interp'
| триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
| ...Цвет ребра, заданный как одно из значений, перечисленных здесь. Цвет по умолчанию [0 0 0]
соответствует чёрным ребрам.
Значение | Описание |
---|---|
'none' | Не рисуйте ребер. |
'flat' | Используйте другой цвет для каждого ребра на основе значений в |
'interp' |
Используйте интерполированную раскраску для каждого ребра на основе значений в
|
Триплет 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' |
'FaceColor'
- Цвет лица'flat'
(по умолчанию) | 'interp'
| 'none'
| 'texturemap'
| триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
| ...Цвет грани, заданный как одно из значений в этой таблице.
Значение | Описание |
---|---|
'flat' | Используйте другой цвет для каждой грани на основе значений в |
'interp' |
Используйте интерполированную раскраску для каждой грани на основе значений в
|
Триплет RGB, шестнадцатеричный цветовой код или название цвета |
Используйте указанный цвет для всех граней. Эта опция не использует значения цветов в
|
'texturemap' | Преобразуйте данные о цвете в CData так, чтобы он соответствовал поверхности. |
'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' |
'EdgeAlpha'
- Ребро[0,1]
| 'flat'
| 'interp'
Ребро, заданная в качестве одного из следующих значений:
Скаляр в области значений [0,1]
- Используйте равномерную прозрачность по всем ребрам. Значение 1
полностью непрозрачен и 0
полностью прозрачен. Значения между 0
и 1
являются полупрозрачными. Эта опция не использует значения прозрачности в AlphaData
свойство.
'flat'
- Используйте разную прозрачность для каждого ребра на основе значений в AlphaData
свойство. Сначала необходимо задать AlphaData
свойство как матрица того же размера, что и ZData
свойство. Значение прозрачности в первой вершине определяет прозрачность для всего ребра. The EdgeColor
свойство также должно быть установлено в 'flat'
.
'interp'
- Используйте интерполированную прозрачность для каждого ребра на основе значений в AlphaData
свойство. Сначала необходимо задать AlphaData
свойство как матрица того же размера, что и ZData
свойство. Прозрачность изменяется между каждым ребром путем интерполяции значений в вершинах. The EdgeColor
свойство также должно быть установлено в 'interp'
.
'LineStyle'
- Стиль линии'-'
(по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии, заданный как одно из опций, перечисленных в этой таблице.
Стиль линии | Описание | Результирующая линия |
---|---|---|
'-' | Сплошная линия |
|
'--' | Штриховая линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Нет линии | Нет линии |
'LineWidth'
- Ширина линии0.5
(по умолчанию) | положительное значениеШирина линии, заданная как положительное значение в точках, где 1 точка = 1/72 дюйма. Если у линии есть маркеры, ширина линии также влияет на ребра маркера.
Ширина линии не может быть более тонкой, чем ширина пикселя. Если вы задаете ширину линии значение, которое меньше, чем ширина пикселя в вашей системе, линия отображается как один пиксель в ширину.
Указания и ограничения по применению:
Эта функция принимает массивы GPU, но не запускается на графическом процессоре.
Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
Указания и ограничения по применению:
Эта функция работает с распределенными массивами, но выполняется в клиентском MATLAB.
Для получения дополнительной информации смотрите Запуск функций MATLAB с распределенными массивами (Parallel Computing Toolbox).
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.