Создайте один или несколько заполненных полигонов
patch(X,Y,C)
patch(X,Y,Z,C)
patch('XData',X,'YData',Y)
patch('XData',X,'YData',Y,'ZData',Z)
patch('Faces',F,'Vertices',V)
patch(S)
patch(___,Name,Value)
patch(ax,___)
p = patch(___)
patch(
создает один или несколько заполненных полигонов с помощью элементов X
,Y
,C
)X
и Y
как координаты для каждой вершины. patch
соединяет вершины в порядке, что вы задаете их. Чтобы создать один полигон, задайте X
и Y
как векторы. Чтобы создать несколько полигонов, задайте X
и Y
как матрицы, где каждый столбец соответствует полигону. C
определяет цвета полигона.
patch('Faces',
создает один или несколько полигонов, где F
,'Vertices',V
)V
задает значения вершины, и F
задает который вершины соединиться. Определение только уникальных вершин и их матрицы связи может уменьшать размер данных, когда существует много полигонов. Задайте одну вершину на строку в V
. Чтобы создать один полигон, задайте F
как вектор. Чтобы создать несколько полигонов, задайте F
как матрицу с одной строкой на полигон. Каждая поверхность не должна иметь того же количества вершин. Чтобы задать различные количества вершин, заполните F
значениями NaN
.
patch(___,
создает полигоны и задает один или несколько аргументов пары "имя-значение" использования свойств исправления. Закрашенная фигура является объектом, который содержит данные для всех созданных полигонов. Можно задать свойства исправления с любой из комбинаций входных аргументов в предыдущих синтаксисах. Например, Name,Value
)'LineWidth',2
устанавливает ширину контура для всех полигонов к 2 точкам.
patch(
создает закрашенную фигуру в осях, заданных ax
,___)ax
вместо в текущей системе координат (gca
). Опция ax может предшествовать любой комбинации входных аргументов в предыдущих синтаксисах.
возвращает объект закрашенной фигуры, который содержит данные для всех полигонов. Используйте p
= patch(___)p
, чтобы запросить и изменить свойства объекта закрашенной фигуры после того, как это будет создано. Для списка свойств и описаний, смотрите Свойства исправления.
Создайте один полигон путем определения (x, y) координаты каждой вершины. Затем добавьте еще два полигона в фигуру.
Создайте красный квадрат с вершинами в (0,0)
, (1,0)
, (1,1)
и (0,1)
. Задайте x
как x-координаты вершин и y
как y-координаты. patch
автоматически соединяет последнее (x, y) координата с первым (x, y) координата.
x = [0 1 1 0];
y = [0 0 1 1];
patch(x,y,'red')
Создайте два полигона путем определения x
и y
как матрицы 2D столбца. Каждый столбец задает координаты для одного из полигонов. patch
добавляет полигоны в текущую систему координат, не очищая оси.
x2 = [2 5; 2 5; 8 8];
y2 = [4 0; 8 2; 4 0];
patch(x2,y2,'green')
Создайте один полигон путем определения координат каждой уникальной вершины и матрицы, которая задает, как соединить их. Затем добавьте еще два полигона в фигуру.
Создайте красный квадрат с углами в (0,0)
, (1,0)
, (1,1)
и (0,1)
. Задайте v
так, чтобы каждая строка задала (x, y) координаты для одной вершины. Затем задайте f
как вершины, чтобы соединиться. Выберите цвет путем определения свойства FaceColor
.
v = [0 0; 1 0; 1 1; 0 1]; f = [1 2 3 4]; patch('Faces',f,'Vertices',v,'FaceColor','red')
Создайте два полигона путем определения f
как матрицы 2D строки. Каждая строка задает поверхность для одной закрашенной фигуры.
v2 = [2 4; 2 8; 8 4; 5 0; 5 2; 8 0]; f2 = [1 2 3; 4 5 6]; patch('Faces',f2,'Vertices',v2,'FaceColor','green')
Создайте два полигона и используйте различный цвет для каждой поверхности полигона. Используйте шкалу палитры, чтобы показать, как цвета сопоставляют в палитру.
Создайте полигоны с помощью матриц x
и y
. Задайте c
как вектор-столбец с двумя элементами, поскольку существует две поверхности полигона и добавляют шкалу палитры.
x = [2 5; 2 5; 8 8]; y = [4 0; 8 2; 4 0]; c = [0; 1]; figure patch(x,y,c) colorbar
Также можно получить тот же результат при использовании f
и v
вместо этого. Когда вы создаете полигоны, устанавливаете FaceVertexCData
на вектор-столбец с двумя элементами, поскольку существует две поверхности полигона. Установите FaceColor
на 'flat'
.
v = [2 4; 2 8; 8 4; 5 0; 5 2; 8 0]; f = [1 2 3; 4 5 6]; col = [0; 1]; figure patch('Faces',f,'Vertices',v,'FaceVertexCData',col,'FaceColor','flat'); colorbar
Интерполируйте цвета через поверхности полигона путем определения цвета в каждой вершине полигона и используйте шкалу палитры, чтобы показать, как цвета сопоставляют в палитру.
Создайте полигоны с помощью матриц x
и y
. Задайте c
как матрицу тот же размер как x
и y
, задающий один цвет на вершину, и добавьте шкалу палитры.
x = [2 5; 2 5; 8 8]; y = [4 0; 8 2; 4 0]; c = [0 3; 6 4; 4 6]; figure patch(x,y,c) colorbar
Также можно получить тот же результат с помощью f
и v
вместо этого. Когда вы создаете полигоны, устанавливаете FaceVertexCData
на вектор-столбец с одним значением на вершину и устанавливаете FaceColor
на 'interp'
.
v = [2 4; 2 8; 8 4; 5 0; 5 2; 8 0]; f = [1 2 3; 4 5 6]; col = [0; 6; 4; 3; 4; 6]; figure patch('Faces',f,'Vertices',v,'FaceVertexCData',col,'FaceColor','interp'); colorbar
Создайте полигон с зелеными ребрами и не отображайте поверхность. Затем создайте второй полигон с различным цветом для каждого ребра.
v = [0 0; 1 0; 1 1]; f = [1 2 3]; figure patch('Faces',f,'Vertices',v,... 'EdgeColor','green','FaceColor','none','LineWidth',2);
Используйте различный цвет для каждого ребра путем определения цвета для каждой вершины и установки EdgeColor
к 'flat'
.
v = [2 0; 3 0; 3 1]; f = [1 2 3]; c = [1 0 0; % red 0 1 0; % green 0 0 1]; % blue patch('Faces',f,'Vertices',v,'FaceVertexCData',c,... 'EdgeColor','flat','FaceColor','none','LineWidth',2);
Используйте структуру, чтобы создать два полигона. Во-первых, создайте структуру с полевыми именами то свойство исправления соответствия имена. Затем используйте структуру, чтобы создать полигоны.
clear S S.Vertices = [2 4; 2 8; 8 4; 5 0; 5 2; 8 0]; S.Faces = [1 2 3; 4 5 6]; S.FaceVertexCData = [0; 1]; S.FaceColor = 'flat'; S.EdgeColor = 'red'; S.LineWidth = 2; figure patch(S)
Создайте два полупрозрачных полигона путем установки свойства FaceAlpha
на значение между 0
и 1
.
v1 = [2 4; 2 8; 8 4]; f1 = [1 2 3]; figure patch('Faces',f1,'Vertices',v1,'FaceColor','red','FaceAlpha',.3); v2 = [2 4; 2 8; 8 8]; f2 = [1 2 3]; patch('Faces',f2,'Vertices',v2,'FaceColor','blue','FaceAlpha',.5);
Создайте разноцветную строку с маркерами в каждой вершине. Интерполируйте цвета и используйте шкалу палитры, чтобы показать, как значения сопоставляют с палитрой.
Создайте данные. Установите последнюю запись y
к NaN
так, чтобы patch
создал строку вместо закрытого полигона. Задайте цвет для каждой вершины с помощью значений y
. Значения в c
сопоставляют с, раскрашивает палитру.
x = linspace(1,10,15); y = sin(x); y(end) = NaN; c = y;
Создайте строку. Покажите маркеры в каждой вершине и установите EdgeColor
на 'interp'
интерполировать цвета между вершинами. Добавьте шкалу палитры.
figure patch(x,y,c,'EdgeColor','interp','Marker','o','MarkerFaceColor','flat'); colorbar;
X
— x - координирует для вершинx- для вершин, заданных в одной из следующих форм:
Вектор — Создает один полигон.
Матрица — Создает полигоны n
с вершинами m
каждый, где [m,n] = size(X)
. Каждый столбец в матрице соответствует одному полигону.
Если данные не задают закрытые полигоны, то patch
закрывает полигоны. Если ребра отдельного полигона пересекают себя, получившиеся полигоны могут быть частично заполнены. В этом случае лучше разделить объект закрашенной фигуры на меньшие полигоны.
Когда вы задаете X
, функция patch
устанавливает свойство XData
для объекта закрашенной фигуры к тому же значению. Объект закрашенной фигуры автоматически вычисляет поверхность и данные о вершине и устанавливает свойства Faces
и Vertices
на соответствующие значения.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Y
— y - координирует для вершинy- для вершин, заданных в одной из следующих форм:
Вектор — Создает один полигон.
Матрица — Создает полигоны n
с вершинами m
каждый, где [m,n] = size(Y)
. Каждый столбец в матрице соответствует одному полигону.
Если данные не задают закрытые полигоны, то patch
закрывает полигоны. Если ребра отдельного полигона пересекают себя, получившиеся полигоны могут быть частично заполнены. В этом случае лучше разделить объект закрашенной фигуры на меньшие полигоны.
Когда вы задаете Y
, функция patch
устанавливает свойство YData
для объекта закрашенной фигуры к тому же значению. Объект закрашенной фигуры автоматически вычисляет поверхность и данные о вершине и устанавливает свойства Faces
и Vertices
на соответствующие значения.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Z
— z - координирует для вершинz- для вершин, заданных в одной из следующих форм:
Вектор — Создает один полигон.
Матрица — Создает полигоны m
с вершинами n
каждый, где [m,n] = size(Z)
. Каждый столбец в матрице соответствует одному полигону.
Когда вы задаете Z
, функция patch
устанавливает свойство ZData
для объекта закрашенной фигуры к тому же значению. Объект закрашенной фигуры автоматически вычисляет поверхность и данные о вершине и устанавливает свойства Faces
и Vertices
на соответствующие значения.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
C
Цвета полигона'r'
| 'g'
| 'b'
|...Цвета полигона, заданные как скаляр, вектор, матрица или название цвета. Формат входа определяет, имеют ли все полигоны тот же цвет, один цвет на поверхность или интерполированные цвета поверхности.
Желаемый эффект | Используйте один из этих форматов | Результаты |
---|---|---|
Один цвет для всех поверхностей |
Для примера смотрите Координаты Определения. |
|
Один цвет на поверхность |
Для примера смотрите Различные Цвета Поверхности Полигона. |
|
Интерполированные цвета поверхности |
Для примера смотрите Интерполированные Цвета Поверхности Полигона. |
|
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должны быть в диапазоне [0,1]; например, [0,4 0,6 0,7].
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены варианты длинного и краткого наименований цветов и их эквивалентные значения RGB.
Опция | Описание | Эквивалентный триплет RGB |
---|---|---|
'красный' или 'r'
| Красный | [1 0 0] |
'green' или 'g' | Зеленый | [0 1 0] |
'blue' или 'b' | Синий | [0 0 1] |
'yellow' или 'y' | Желтый | [1 1 0] |
'пурпурный' или 'm'
| Пурпурный | [1 0 1] |
'голубой' или 'c'
| Голубой | [0 1 1] |
'white' или 'w' | Белый | [1 1 1] |
'black' или 'k' | Черный | [0 0 0] |
V
Вершины полигонаВершины полигона, заданные в одной из следующих форм:
Матрица 2D столбца — Каждая строка содержит (x, y) координаты для вершины.
Матрица с тремя столбцами — Каждая строка содержит (x, y, Z) координаты для вершины.
Задайте только уникальные вершины. Можно обратиться к вершине несколько раз при определении определений поверхности в F
.
Когда вы задаете V
, функция patch
устанавливает свойство Vertices
для объекта закрашенной фигуры к тому же значению. Объект закрашенной фигуры автоматически вычисляет координатные данные и устанавливает XData
, YData
и ZData
к соответствующим значениям.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
F
Столкнитесь с определениямиСтолкнитесь с определениями, заданными в одной из следующих форм:
Вектор - строка — Создает один полигон.
Матрица — Создает несколько полигонов, где каждая строка соответствует полигону.
Например, этот код задает три вершины в V
и создает один полигон путем соединения вершины 1 - 2, 2 - 3, и от 3 до 1.
V = [1 1; 2 1; 2 2]; F = [1 2 3 1]; patch('Faces',F,'Vertices',V)
Когда вы задаете F
, функция patch
устанавливает свойство Faces
для объекта закрашенной фигуры к тому же значению. Объект закрашенной фигуры автоматически вычисляет координатные данные и устанавливает XData
, YData
и ZData
к соответствующим значениям.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
S
Исправьте определениеИсправьте определение, заданное как структура с полями, которые соответствуют имена свойства исправления и значения полей, которые соответствуют значениям свойства исправления.
ax
— Объект осейОбъект осей. Если вы не задаете объект осей, то patch
использует текущую систему координат.
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
patch(x,y,c,'FaceAlpha',.5,'LineStyle',':')
создает полупрозрачные полигоны с пунктирными краями.Свойства, перечисленные здесь, являются только подмножеством свойств исправления. Для полного списка смотрите Свойства исправления.
'FaceColor'
'FaceColor' [0 0 0]
(значение по умолчанию) | 'interp'
| 'flat'
| триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
|...Цвет поверхности, заданный как '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' |
'FaceAlpha'
Столкнитесь с прозрачностью[0,1]
| 'flat'
| 'interp'
Столкнитесь с прозрачностью, заданной как одно из этих значений:
Скаляр в области значений [0,1]
— универсальная прозрачность Использования через все поверхности. Значение 1
полностью непрозрачно, и 0
абсолютно прозрачен. Эта опция не использует значения прозрачности в свойстве FaceVertexAlphaData
.
'flat'
— Используйте различную прозрачность для каждой поверхности на основе значений в свойстве FaceVertexAlphaData
. Сначала необходимо задать свойство FaceVertexAlphaData
как вектор, содержащий одно значение прозрачности на поверхность или вершину. Значение прозрачности в первой вершине определяет прозрачность для целой поверхности.
'interp'
— Используйте интерполированную прозрачность для каждой поверхности на основе значений в свойстве FaceVertexAlphaData
. Сначала необходимо задать свойство FaceVertexAlphaData
как вектор, содержащий одно значение прозрачности на вершину. Прозрачность отличается через каждую поверхность путем интерполяции значений в вершинах.
'EdgeColor'
Цвета обводки[0 0 0]
(значение по умолчанию) | 'none'
| 'flat'
| 'interp'
| триплет RGB | шестнадцатеричный цветовой код | 'r'
| 'g'
| 'b'
|...Цвета обводки, заданные как одно из значений в этой таблице. Цвет обводки по умолчанию является черным со значением [0 0 0]
. Если несколько полигонов совместно используют ребро, то первый полигон чертившие средства управления отображенный цвет обводки.
Значение | Описание | Результат |
---|---|---|
Триплет RGB, шестнадцатеричный цветовой код или название цвета | Один цвет для всех ребер. Дополнительную информацию см. в следующей таблице. |
|
'flat' | Различный цвет для каждого ребра. Используйте цвета вершины, чтобы выбрать цвет ребра, которое следует за ним. Необходимо сначала задать |
|
'interp' | Интерполированный цвет обводки. Необходимо сначала задать |
|
'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' |
'LineStyle'
— Стиль линии'-'
(значение по умолчанию) | '--'
| ':'
| '-.'
| 'none'
Стиль линии, заданный как одна из опций, перечислен в этой таблице.
Стиль линии | Описание | Получившаяся строка |
---|---|---|
'-' | Сплошная линия |
|
'--' | Пунктирная линия |
|
':' | Пунктирная линия |
|
'-.' | Штрих-пунктирная линия |
|
'none' | Никакая строка | Никакая строка |
p
объект закрашенной фигурыОбъект закрашенной фигуры, возвращенный как скаляр. Каждый объект закрашенной фигуры может состоять из одного или нескольких полигонов. Используйте p
, чтобы запросить или изменить свойства объекта закрашенной фигуры после того, как это будет создано.
Указания и ограничения по применению:
Эта функция принимает массивы графического процессора, но не работает на графическом процессоре.
Для получения дополнительной информации смотрите функции MATLAB Выполнения на графическом процессоре (Parallel Computing Toolbox).
Указания и ограничения по применению:
Эта функция работает с распределенными массивами, но выполняет в клиенте MATLAB.
Для получения дополнительной информации смотрите функции MATLAB Выполнения с Распределенными Массивами (Parallel Computing Toolbox).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.