文档

补丁

打印一个或多个填充多边形区域

描述

例子

补丁(XYC的元素绘制一个或多个已填充的多边形区域XY作为每个顶点的坐标。补丁按指定的顺序连接顶点。要创建一个多边形,请指定XY向量。要创建多个多边形,请指定XY作为矩阵,其中每列对应一个多边形。C确定多边形颜色。

补丁(XYZC使用创建三维坐标中的多边形XY, 和Z.要在3-D视图中查看多边形,请使用视图(3)指挥部。C确定多边形颜色。

补丁('xdata',X,'ydata',Y类似于补丁(X, Y, C),除非您不必为2d坐标指定颜色数据。

补丁('xdata',X,'ydata',Y“ZData”,Z类似于补丁(x,y,z,c),不过您不必为3d坐标指定颜色数据。

例子

补丁(“脸”,F,顶点,V创建一个或多个多边形V指定顶点值F定义要连接的顶点。指定唯一的顶点和它们的连接矩阵可以在有许多多边形时减少数据的大小。中每一行指定一个顶点V.要创建一个多边形,请指定F作为向量。要创建多个多边形,请指定F作为一个矩阵,每个多边形一行。每个面不必具有相同数量的顶点。若要指定不同数量的顶点,请单击“填充”F值。

例子

补丁(年代使用结构创建一个或多个多边形年代.结构字段对应于补丁属性名,字段值对应于属性值。例如,年代可以包含字段脸上顶点

例子

补丁(___名称,值使用名称值对参数创建多边形并指定一个或多个修补程序属性。修补程序是包含创建的所有多边形的数据的对象。您可以使用先前语法中的任何输入参数组合指定补丁属性。例如,“线宽”,2将所有多边形设置为2个点的轮廓宽度。

补丁(斧头___在指定的轴上创建面片斧头而不是当前轴(gca)。选项斧头可以在先前语法中之前在任何输入参数组合之前。

p=补丁(___返回包含所有多边形数据的面片对象。使用p查询和修改已创建的补丁对象的属性。有关属性和描述的列表,请参见补丁属性

例子

全部收缩

通过指定(指定)创建单个多边形(x, y)每个顶点的坐标。然后,在图形中再添加两个多边形。

创建一个顶点为的红色正方形(0,0)(1,0)(1,1), 和(0,1).指定x随着x-顶点和顶点的坐标y随着y- 控制。补丁自动连接最后一个(x, y与第一协调(x, y)坐标。

x = [0 1 1 0];Y = [0 0 1 1];补丁(x,y,“红色”

通过指定创建两个多边形xy当两列矩阵。每一列定义一个多边形的坐标。补丁将多边形添加到当前轴,而不清除轴。

X2 = [2 5;2 5;8 8];Y2 = [4 0;8 2;4 0];补丁(x2, y2,'绿色'

通过指定每个唯一顶点的坐标和定义如何连接它们的矩阵来创建单个多边形。然后,再添加两个多边形到图形中。

创建一个红色正方形,角位于(0,0)(1,0)(1,1), 和(0,1).指定v以便每一行定义(x, y)一个顶点的坐标。然后,指定f作为连接的顶点。通过指定来设置颜色脸色财产。

v=[0;10;11;01];f=[1 2 3 4];补丁(“脸”,F,“顶点”v,“FaceColor”“红色”

通过指定创建两个多边形f作为两行矩阵。每行定义一个面片的面。

v2=[24;28;84;50;52;80];f2=[123;456];补丁(“脸”,f2,“顶点”,v2,“FaceColor”'绿色'

创建两个多边形,并为每个多边形使用不同的颜色。使用颜色条来显示颜色如何映射到颜色映射中。

使用矩阵创建多边形xy.指定c作为具有两个元素的列向量,因为有两个多边形面,并添加一个彩色键。

x=[25;25;88];y=[40;82;40];c=[0;1];图形补丁(x,y,c)颜色条

或者,使用时可以获得相同的结果fv反而。当您创建多边形时,设置FaceVertexCData到具有两个元素的列向量,因为有两个多边形面。放脸色“平”

v=[24;28;84;50;52;80];f=[123;456];col=[0;1];图块(“脸”,F,“顶点”v,“FaceVertexCData”,上校,“FaceColor”“平”);colorbar

通过在每个多边形顶点指定颜色,跨多边形面插值颜色,并使用颜色栏显示颜色如何映射到颜色贴图中。

使用矩阵创建多边形xy.指定c作为一个大小相同的矩阵xy为每个顶点定义一种颜色,并添加一个颜色条。

X = [2 5;2 5;8 8];Y = [4 0;8 2;4 0];C = [0 3;6 4;4 6];图块(x, y, c) colorbar

或者,您可以使用fv反而。当您创建多边形时,设置FaceVertexCData到每个顶点有一个值的列向量,并设置脸色'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(“脸”,F,“顶点”v,“FaceVertexCData”,上校,“FaceColor”'interp');colorbar

创建具有绿色边缘的多边形,不显示面部。然后,为每个边缘创建具有不同颜色的第二多边形。

V = [0 0;1 0;1 1];F = [1 2 3];图块(“脸”,F,“顶点”v,...“EdgeColor”'绿色'“FaceColor”“没有”“线宽”,2);

通过为每个顶点和设置指定颜色,为每个边使用不同的颜色EdgeColor“平”

V = [20 0;3 0;3 1];F = [1 2 3];C = [1 0 0;%的红色0 1 0;%绿色的0 0 1);%蓝色的补丁(“脸”,F,“顶点”v,“FaceVertexCData”,C,...“EdgeColor”“平”“FaceColor”“没有”“线宽”,2);

使用一个结构创建两个多边形。首先,创建一个具有与补丁属性名称匹配的字段名称的结构。然后,使用该结构创建多边形。

清晰的年代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 =“平”;S.EdgeColor =“红色”;S.线宽=2;图形面片

通过设置FaceAlpha属性转换为之间的值01

v1 = [2 4;2 8;8 4];F1 = [1 2 3];图块(“脸”,f1,“顶点”,v1,“FaceColor”“红色”“FaceAlpha”3);V2 = [2 4;2 8;8 8];F2 = [1 2 3];补丁(“脸”,f2,“顶点”,v2,“FaceColor”“蓝”“FaceAlpha”,.5);

在每个顶点上创建一个带有标记的多色线。插入颜色并使用彩色键来显示值映射到ColorMap的方式。

创建数据。设置的最后一项y以便补丁创建直线而不是闭合多边形。使用y值。中的值c映射到颜色图中的颜色。

x=linspace(1,10,15);y=sin(x);y(end)=NaN;c=y;

创建行。在每个顶点显示标记并设置EdgeColor'interp'要在顶点之间插入颜色,请添加颜色栏。

图1(x、y、c、,“EdgeColor”'interp''标记'“o”“MarkerFaceColor”“平”);彩色杆;

输入参数

全部收缩

x-顶点的坐标,以以下形式之一指定:

  • 矢量-创建一个多边形。

  • 矩阵-创建n多边形与每个顶点,其中[m, n] =大小(X).矩阵中的每列对应一个多边形。

如果数据未定义闭合多边形,则补丁关闭多边形。如果单个多边形的边彼此相交,得到的多边形可能部分被填充。在这种情况下,最好将patch对象分割成更小的多边形。

当您指定X,补丁函数设置XData属性为相同的值。patch对象自动计算人脸和顶点数据,并设置脸上顶点属性到适当的值。

数据类型:单一的|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

y-顶点的坐标,以以下形式之一指定:

  • 矢量-创建一个多边形。

  • 矩阵-创建n多边形与每个顶点,其中[m, n] =大小(Y).矩阵中的每列对应一个多边形。

如果数据未定义闭合多边形,则补丁关闭多边形。如果单个多边形的边彼此相交,得到的多边形可能部分被填充。在这种情况下,最好将patch对象分割成更小的多边形。

当您指定Y,补丁函数设置伊达塔属性为相同的值。patch对象自动计算人脸和顶点数据,并设置脸上顶点属性到适当的值。

数据类型:单一的|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

z-顶点的坐标,以以下形式之一指定:

  • 矢量-创建一个多边形。

  • 矩阵-创建多边形与n每个顶点,其中[m, n] =大小(Z).矩阵中的每列对应一个多边形。

当您指定Z,补丁函数设置兹达塔属性为相同的值。patch对象自动计算人脸和顶点数据,并设置脸上顶点属性到适当的值。

数据类型:单一的|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

多边形颜色,指定为标量、向量、矩阵或颜色名称。输入的格式决定了所有多边形是否具有相同的颜色、每个面是一种颜色还是内插的面颜色。

期望的效果 使用其中一种格式 结果
所有的脸都是单色的

  • 例如颜色名称,“r”红色的。

  • 例如RGB三联体,[0。5。5)

  • 例如,标量值,2.的CDataMapping属性确定值如何映射到颜色映射。

例如,看到指定坐标

  • 设置脸色属性到指定的颜色。

一张脸只有一种颜色

  • n颜色映射颜色的-乘1向量,其中n是脸的数量。的CDataMapping属性确定值如何映射到颜色映射。

  • n——- - - - - -1——- - - - - -3.RGB值的数组。数组的第一页定义颜色的红色分量,第二页定义蓝色分量,第三页定义绿色分量。

例如,看到不同的多边形面颜色

插值面颜色

  • ——- - - - - -n颜色映射值的矩阵,其中[m, n] =大小(X).为每个顶点指定一个颜色。

  • ——- - - - - -n——- - - - - -3.RGB值数组。

例如,看到插值多边形面颜色

RGB三联网是一个三元素行向量,其元素指定了红色,绿色和蓝色组件的强度。强度必须在范围内[0,1]; 例如[0.4 0.6 0.7]。或者,您可以按名称指定一些常用颜色。此表列出了长颜色和短颜色名称选项以及等效的RGB三元组值。

选项 描述 等效RGB三重态
“红色”或者“r” 红色的 [1 0 0]
'绿色'或者“g” 绿色 [0 1 0]
“蓝”或者“b” 蓝色的 (0 0 1)
“黄色”或者'是' 黄色 (1 1 0)
“红色”或者“米” 品红色的 [1 0 1]
'青色'或者“c” 青色 [0 1 1]
“白色”或者' w ' 白色 (1 1 1)
“黑色”或者“k” 黑色的 (0 0 0)

多边形顶点,其中一个形式指定:

  • 双列矩阵 - 每行包含(xy)顶点的坐标。

  • 三列矩阵-每行包含(xyZ)顶点的坐标。

只指定唯一的顶点。中定义面的定义时,可以多次引用一个顶点F

当您指定V,补丁函数设置顶点属性为相同的值。Patch对象会自动计算坐标数据并设置XData伊达塔, 和兹达塔到适当的值。

数据类型:单一的|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

Face定义,以以下形式之一指定:

  • 行矢量 - 创建单个多边形。

  • 矩阵-创建多个多边形,其中每行对应一个多边形。

例如,这段代码在V并通过将顶点1连接到2、2连接到3和3连接到1来创建一个多边形。

V = [1 1;2 1;2 2];F = [1 2 3 1];补丁(“脸”,F,“顶点”, V)

当您指定F,补丁函数设置脸上属性为相同的值。Patch对象会自动计算坐标数据并设置XData伊达塔, 和兹达塔到适当的值。

数据类型:单一的|双重的|int8|int16|int32|int64|uint8|uint16|uint32|uint64

面片定义,指定为结构,其中字段对应面片特性名称,字段值对应面片特性值。

轴对象。如果您未指定轴对象,那么补丁使用当前轴。

名称值对参数

指定可选的逗号分隔的对名称,值参数。名称参数名和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:面片(x、y、c、'FaceAlpha'、.5、'LineStyle'、':')创建带点边的半透明多边形。

此处列出的属性只是修补程序属性的子集。有关完整列表,请参阅补丁属性

面部颜色,指定为'interp'“平”一个RGB三元组、一个十六进制颜色代码、一个颜色名称或一个简短的名称。

为每个脸部创建不同的颜色,请指定cdata.或者FaceVertexCData属性作为每个面部的一个颜色或每顶颜色的数组。颜色可以从每个面的周围顶点的颜色插值,或者它们可以是均匀的。对于插值颜色,请指定此属性'interp'.对于统一颜色,将此属性指定为“平”.如果您指定“平”每个顶点的颜色不同,指定的第一个顶点的颜色决定面颜色。

要为所有面部指定单个颜色,请将此属性指定为RGB三联体,十六进制颜色代码,颜色名称或短名称。

  • RGB三联网是一个三元素行向量,其元素指定了红色,绿色和蓝色组件的强度。强度必须在范围内[0,1]; 例如[0.4 0.6 0.7]

  • 十六进制颜色代码是以哈希符号开头的字符向量或字符串标量(),然后是3个或6个十六进制数字,其范围可以是0F. 这些值不区分大小写。因此,颜色代码'#ff8800''#ff8800''#f80', 和“# f80”是等价的。

颜色名称 短名称 RGB值 十六进制颜色代码 外貌
“红色” “r” [1 0 0] “# FF0000”

'绿色' “g” [0 1 0] “# 00 ff00”

“蓝” “b” (0 0 1) “# 0000 ff”

'青色' “c” [0 1 1] “#00FFFF”

“红色” “米” [1 0 1] “#FF00FF”

“黄色” '是' (1 1 0) “# FFFF00”

“黑色” “k” (0 0 0) # 000000的

“白色” ' w ' (1 1 1) “# FFFFFF”

“没有” 不适用 不适用 不适用 没有颜色

这里是RGB三联体和十六进制颜色代码的默认颜色MATLAB®用于多种类型的绘图。

RGB值 十六进制颜色代码 外貌
[0 0.4470 - 0.7410) “# 0072 bd”

(0.8500 0.3250 0.0980) “# D95319”

[0.9290 0.6940 0.1250] '#edb120'

(0.4940 0.1840 0.5560) “# 7 e2f8e”

[0.4660 0.6740 0.1880] “# 77 ac30”

(0.3010 0.7450 0.9330) “# 4 dbeee”

[0.6350 0.0780 0.1840] '#a2142f'

表面透明度,指定为以下值之一:

  • 标量范围内[0,1]-使用统一的透明度在所有的脸。的值1是完全不透明的0是完全透明的。属性中的透明度值不使用FaceVertexAlphaData财产。

  • “平”-根据中的值为每个面使用不同的透明度FaceVertexAlphaData财产。首先,您必须指定FaceVertexAlphaData属性为每个面或顶点包含一个透明度值的向量。第一个顶点的透明度值决定了整个脸的透明度。

  • 'interp'-使用插值的透明度为每个面基于值FaceVertexAlphaData财产。首先,您必须指定FaceVertexAlphaData作为包含每个顶点一个透明度值的向量的属性。通过在顶点处插入值,透明度在每个面上变化。

边颜色,指定为该表中的一个值。默认边缘颜色为黑色,值为(0 0 0).如果多个多边形共享一条边,则绘制的第一个多边形将控制显示的边颜色。

价值 描述 结果

RGB三元组,十六进制颜色代码,或颜色名称

所有边缘均为单色。有关详细信息,请参阅下表。

“平”

每个边缘的不同颜色。使用顶点颜色设置随之而来的边缘的颜色。您必须首先指定cdata.或者FaceVertexCData每个顶点包含一种颜色的数组。边的颜色取决于指定顶点的顺序。

'interp'

内插边的颜色。您必须首先指定cdata.或者FaceVertexCData每个顶点包含一种颜色的数组。通过线性地插入两个边界顶点的值来确定边缘颜色。

“没有” 没有显示的边缘。

没有显示的边缘。

RGB三元组和十六进制颜色代码对于指定自定义颜色很有用。

  • RGB三联网是一个三元素行向量,其元素指定了红色,绿色和蓝色组件的强度。强度必须在范围内[0,1]; 例如[0.4 0.6 0.7]

  • 十六进制颜色代码是以哈希符号开头的字符向量或字符串标量(),然后是3个或6个十六进制数字,其范围可以是0F. 这些值不区分大小写。因此,颜色代码'#ff8800''#ff8800''#f80', 和“# f80”是等价的。

或者,您可以按名称指定一些常见颜色。此表列出了名为Color选项,等效RGB三元组和十六进制颜色代码。

颜色名称 短名称 RGB值 十六进制颜色代码 外貌
“红色” “r” [1 0 0] “# FF0000”

'绿色' “g” [0 1 0] “# 00 ff00”

“蓝” “b” (0 0 1) “# 0000 ff”

'青色' “c” [0 1 1] “#00FFFF”

“红色” “米” [1 0 1] “#FF00FF”

“黄色” '是' (1 1 0) “# FFFF00”

“黑色” “k” (0 0 0) # 000000的

“白色” ' w ' (1 1 1) “# FFFFFF”

以下是MATLAB在多种绘图类型中使用的默认颜色的RGB三元组和十六进制颜色代码。

RGB值 十六进制颜色代码 外貌
[0 0.4470 - 0.7410) “# 0072 bd”

(0.8500 0.3250 0.0980) “# D95319”

[0.9290 0.6940 0.1250] '#edb120'

(0.4940 0.1840 0.5560) “# 7 e2f8e”

[0.4660 0.6740 0.1880] “# 77 ac30”

(0.3010 0.7450 0.9330) “# 4 dbeee”

[0.6350 0.0780 0.1840] '#a2142f'

行样式,指定为该表中列出的选项之一。

线条样式 描述 结果线
“- - -” 实线

“——” 虚线

':' 虚线

“-”。 Dash-dotted线

“没有” 没有线 没有线

输出参数

全部收缩

补丁对象,作为标量返回。每个patch对象可以由一个或多个多边形组成。使用p查询或修改已创建的补丁对象的属性。

扩展能力

在R2006A之前介绍