Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

polarscatter

极坐标中的散点图

  • Polar scatter chart

说明

向量和矩阵数据

示例

polarscatter(theta,rho) 绘制 thetarho 的图,并在每个数据点上显示一个圆形标记。以弧度为单位指定 theta

  • 要绘制一组点,请将 thetarho 指定为等长向量。

  • 要在同一极坐标区内绘制多组点,请将 thetarho 中的至少一个指定为矩阵。

polarscatter(theta,rho,sz) 设置标记大小,其中 sz 以点方阵为单位指定每个标记的区域。要以相同的大小绘制所有标记,请将 sz 指定为标量。要绘制具有不同大小的标记,请指定为向量或矩阵。

示例

polarscatter(theta,rho,sz,c) 指定标记颜色。您可以为所有标记指定一种颜色,也可以更改颜色。例如,您可以通过将 c 指定为 'red' 来绘制所有红色圆。

polarscatter(___,mkr) 设置标记符号。例如,'+' 显示十字标记。在上述语法中的任何输入参数组合之后指定标记符号。

示例

polarscatter(___,'filled') 填充标记内部。

表数据

示例

polarscatter(tbl,thetavar,rhovar) 绘制表 tbl 中的变量 thetavarrhovar。要绘制一个数据集,请为 thetavar 指定一个变量,为 rhovar 指定一个变量。要绘制多个数据集,请为 thetavarrhovar 或两者指定多个变量。如果两个参数都指定多个变量,它们指定的变量数目必须相同。(自 R2021b 开始提供)

示例

polarscatter(tbl,thetavar,rhovar,'filled') 用实心圆绘制表中的指定变量。(自 R2021b 开始提供)

其他选项

polarscatter(pax,___) 将在 pax 指定的极坐标区(而不是当前坐标区)中绘制图形。

polarscatter(___,Name,Value) 使用一个或多个名称-值对组参数修改散点图的外观。例如,您可以指定 'FaceAlpha' 和一个介于 01 之间的标量值,从而使用半透明标记。

示例

ps = polarscatter(___) 返回 Scatter 对象或 Scatter 对象数组。在创建 Scatter 对象之后可使用 ps 修改其外观。有关属性列表,请参阅 Scatter 属性

示例

全部折叠

在极坐标中创建一个散点图。

th = pi/4:pi/4:2*pi;
r = [19 6 12 18 16 11 15 15];
polarscatter(th,r)

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

在 R2022a 之前,默认情况下极坐标区不包括度符号。要添加度符号,请使用 pax = gca 获取极坐标区。然后使用 pax.ThetaTickLabel = string(pax.ThetaTickLabel) + char(176) 修改刻度标签。

通过指定可选的输入参数 'filled',创建一个使用填充标记的散点图。将标记大小设置为 75 点方阵。

th = linspace(0,2*pi,20);
r = rand(1,20);
sz = 75;
polarscatter(th,r,sz,'filled')

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

使用具有不同大小和颜色的标记创建散点图。将可选的大小和颜色输入参数指定为向量。使用颜色向量中的唯一性值指定所需的不同颜色。这些值映射到颜色图中的不同颜色。

th = pi/4:pi/4:2*pi;
r = [19 6 12 18 16 11 15 15];
sz = 100*[6 15 20 3 15 3 6 40];
c = [1 2 2 2 1 1 2 1];
polarscatter(th,r,sz,c,'filled','MarkerFaceAlpha',.5)

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

创建角度值以度为单位的数据。由于 polarscatter 要求角度值以弧度为单位,因此要在绘制之前使用 deg2rad 将值转换为弧度。

th = linspace(0,360,50);
r = 0.005*th/10;
th_radians = deg2rad(th);
polarscatter(th_radians,r)

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

使用 hold 命令将位于相同极坐标区中的两个散点图合并起来。添加包含每个图的描述信息的图例。

th = pi/6:pi/6:2*pi;
r1 = rand(12,1);
polarscatter(th,r1,'filled')

hold on 
r2 = rand(12,1);
polarscatter(th,r2,'filled')
hold off

legend('Series A','Series B')

Figure contains an axes object with type polaraxes. The polaraxes object contains 2 objects of type scatter. These objects represent Series A, Series B.

创建一个散点图,并将散点图对象赋给变量 ps

th = pi/6:pi/6:2*pi;
r = rand(12,1);
ps = polarscatter(th,r,'filled')

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

ps = 
  Scatter with properties:

             Marker: 'o'
    MarkerEdgeColor: 'none'
    MarkerFaceColor: 'flat'
          LineWidth: 0.5000
          ThetaData: [0.5236 1.0472 1.5708 2.0944 2.6180 3.1416 3.6652 4.1888 4.7124 5.2360 5.7596 6.2832]
              RData: [0.8147 0.9058 0.1270 0.9134 0.6324 0.0975 0.2785 0.5469 0.9575 0.9649 0.1576 0.9706]
              ZData: [1x0 double]
           SizeData: 36
              CData: [0 0.4470 0.7410]

  Use GET to show all properties

在创建散点图对象之后可使用 ps 修改其属性。

ps.Marker = 'square';
ps.SizeData = 200;
ps.MarkerFaceColor = 'red';
ps.MarkerFaceAlpha = .5;

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

自 R2021b 开始提供

绘制表中数据的一种便捷方法是将表传递给 polarscatter 函数,并指定要绘制的变量。例如,创建一个包含三个变量的表,并绘制 'Th''R1' 变量。

% Create a table of random numbers
Th = linspace(0,2*pi,50)';
R1 = randi([0 10],50,1);
R2 = randi([20 30],50,1);
tbl = table(Th,R1,R2);

% Create polar scatter chart
polarscatter(tbl,'Th','R1')

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

您也可以同时绘制多个变量。例如,通过将 rvar 参数指定为元胞数组 {'R1','R2'} 来绘制两组半径值。然后,添加一个图例。图例标签与变量名称匹配。

polarscatter(tbl,'Th',{'R1','R2'})
legend

Figure contains an axes object with type polaraxes. The polaraxes object contains 2 objects of type scatter.

自 R2021b 开始提供

绘制表中数据并自定义颜色和标记大小的一种方法是设置 ColorVariableSizeData 属性。您可以在调用 polarscatter 函数时将这些属性设置为名称-值参数,也可以稍后在 Scatter 对象上设置它们。

例如,创建一个包含三个随机数变量的表,并用填充标记绘制 ThR 变量。通过指定 ColorVariable 名称-值参数来更改标记颜色。将 Scatter 对象返回为 s,以便以后可以设置其他属性。

Th = linspace(0,2*pi,50)';
R = randi([0 10],50,1);
Colors = rand(50,1);
tbl = table(Th,R,Colors);
s = polarscatter(tbl,'Th','R','filled','ColorVariable','Colors');

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

通过设置 SizeData 属性,将标记大小更改为 100 磅。

s.SizeData = 100;

Figure contains an axes object with type polaraxes. The polaraxes object contains an object of type scatter.

输入参数

全部折叠

Theta 值,指定为标量、向量或矩阵。散点图对象的 ThetaData 属性存储 theta 值。

theta 的大小和形状取决于数据的形状。下表说明了最常见的情况。

绘图类型如何指定坐标
单点

thetarho 指定为标量。例如:

polarscatter(pi/2,0.5)

一组点

指定 thetarho 为相同长度的行向量或列向量的任意组合。例如:

polarscatter([0 pi/4 pi/2],[1; 2; 3])

不同颜色的多组点

如果所有组共享相同的 theta 或 rho 值,请将共享坐标指定为一个向量,将其他坐标指定为一个矩阵。该向量的长度必须与该矩阵的维度之一相匹配。例如:

polarscatter([0 pi/4 pi/2],[4 5 6; 7 8 9])
如果矩阵是方阵,polarscatter 将为矩阵中的每列绘制一组单独的点。

也可以指定 thetarho 为相同大小的矩阵。在本例中,polarscatter 绘制 theta 的每列对 rho 的对应列的图。例如:

polarscatter([0 pi/6 pi/2; pi/8 pi/4 pi],[1 2 3; 4 5 6])

要将度转换为弧度,请使用 deg2rad

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

rho 值,指定为标量、向量或矩阵。散点图对象的 RData 属性存储 rho 值。

rho 的大小和形状取决于数据的形状。下表说明了最常见的情况。

绘图类型如何指定坐标
单点

thetarho 指定为标量。例如:

polarscatter(pi/2,0.5)

一组点

指定 thetarho 为相同长度的行向量或列向量的任意组合。例如:

polarscatter([0 pi/4 pi/2],[1; 2; 3])

不同颜色的多组点

如果所有组共享相同的 theta 或 rho 值,请将共享坐标指定为一个向量,将其他坐标指定为一个矩阵。该向量的长度必须与该矩阵的维度之一相匹配。例如:

polarscatter([0 pi/4 pi/2],[4 5 6; 7 8 9])
如果矩阵是方阵,polarscatter 将为矩阵中的每列绘制一组单独的点。

也可以指定 thetarho 为相同大小的矩阵。在本例中,polarscatter 绘制 theta 的每列对 rho 的对应列的图。例如:

polarscatter([0 pi/6 pi/2; pi/8 pi/4 pi],[1 2 3; 4 5 6])

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

标记大小,指定为数值标量、向量、矩阵或空数组 ([])。大小控制每个标记的区域(以点方阵为单位)。空数组指定 36 磅的默认大小。指定大小的方式取决于您如何指定 thetarho,以及您所需的绘图外观。下表说明了最常见的情况。

所需的标记大小thetarho sz示例

所有点的大小均相同

针对 thetarho 所述的向量或矩阵的任意有效组合。

标量

theta 指定为向量,将 rho 指定为矩阵,将 sz 指定为标量。

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
polarscatter(th,r,100)

每个点的大小不同

相同长度的向量

  • thetarho 长度相同的向量。

  • 有至少一个维度与 thetarho 长度匹配的矩阵。指定矩阵对于在每个 (th,r) 位置显示不同大小的多个标记很有用。

thetarhosz 指定为向量。

th = [0 pi/6 pi/2];
r = [1; 2; 3];
sz = [50 500 100];
polarscatter(th,r,sz)

thetarho 指定为向量,将 sz 指定为矩阵。

th = [0 pi/6 pi/2];
r = [1; 2; 3];
sz = [50 500 100; 300 1000 200];
polarscatter(th,r,sz)

每个点的大小不同

xy 中有至少一个是用于绘制多个数据集的矩阵

  • 其元素数与每个数据集中的点数相同的向量。

  • thetarho 矩阵大小相同的矩阵。

theta 指定为向量,将 rho 指定为矩阵,将 sz 指定为向量。

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
sz = [50 500 1000];
polarscatter(th,r,sz)

theta 指定为向量,将 rho 指定为矩阵,将 sz 指定为与 rho 大小相同的矩阵。

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
sz = [50 500; 1000 2000; 100 300];
polarscatter(th,r,sz)

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

标记颜色,指定为颜色名称、RGB 三元组、RGB 三元组矩阵或由颜色图索引组成的向量。

  • 颜色名称 - 颜色名称(如 'red')或短名称(如 'r')。

  • RGB 三元组 - 三元素行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]。RGB 三元组对于创建自定义颜色很有用。

  • RGB 三元组矩阵 - 三列矩阵,其中的每一行均为一个 RGB 三元组。

  • 由颜色图索引组成的向量 - 数值向量,其长度与 thetarho 向量相同。

指定颜色的方式取决于所需的颜色方案以及是绘制一组坐标还是多组坐标。下表说明了最常见的情况。

颜色方案指定颜色的方式示例

对所有点使用一种颜色。

从下表中指定一种颜色名称或短名称,或指定一个 RGB 三元组。

绘制一组点,并将颜色指定为 'red'

th = [0 pi/6 pi/2];
r = [1 2 3];
c = 'red';
polarscatter(th,r,[],c)

绘制两组点,并使用一个 RGB 三元组将颜色指定为红色。

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
c = [1 0 0];
polarscatter(th,r,[],c)

使用颜色图为每个点指定不同颜色。

指定一个由数字组成的行向量或列向量。当前颜色图数组中的数值索引。最小值映射到颜色图中的第一行,最大值映射到最后一行。中间值线性映射到中间行。

如果您的绘图有三个点,请指定一个列向量,以确保这些值被解释为颜色图索引。

仅当 thetarhosz 均为向量时,才能使用此方法。

创建一个向量 c,它指定四个颜色图索引。使用当前颜色图中的颜色绘制四个点。然后,将颜色图更改为 winter

th = [0 pi/6 pi/2 2*pi/3];
r = [1 2 3 4];
c = [1 2 3 4];
polarscatter(th,r,[],c)
colormap(gca,'winter')

为每个点创建一种自定义颜色。

指定一个由 RGB 三元组组成的 m×3 矩阵,其中 m 是图中的点数。

仅当 thetarhosz 均为向量时,才能使用此方法。

创建一个矩阵 c,它指定四种颜色的 RGB 三元组。然后用这些颜色绘制四个点。

th = [0 pi/6 pi/2 2*pi/3];
r = [1 2 3 4];
c = [1 0 0; 0 1 0; 0 0 1; 0 0 0];
polarscatter(th,r,[],c)

为每个数据集创建一种不同颜色。

指定一个由 RGB 三元组组成的 n×3 矩阵,其中 n 为数据集个数。

仅当 thetarhosz 中有至少一个是矩阵时,才能使用此方法。

创建一个包含两个 RGB 三元组的矩阵 c。然后使用这些颜色绘制两个数据集。

th = [0 pi/6 pi/2];
r = [1 2; 2 4; 5 6];
c = [1 0 0; 0 0 1];
polarscatter(th,r,[],c)

常见颜色的颜色名称和 RGB 三元组

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

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

RGB 三元组十六进制颜色代码外观
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | char | string

标记符号,指定为下表中列出的标记符号之一。

标记描述生成的标记
"o"圆圈

Sample of circle marker

"+"加号

Sample of plus sign marker

"*"星号

Sample of asterisk marker

"."

Sample of point marker

"x"叉号

Sample of cross marker

"_"水平线条

Sample of horizontal line marker

"|"垂直线条

Sample of vertical line marker

"square"方形

Sample of square marker

"diamond"菱形

Sample of diamond marker

"^"上三角

Sample of upward-pointing triangle marker

"v"下三角

Sample of downward-pointing triangle marker

">"右三角

Sample of right-pointing triangle marker

"<"左三角

Sample of left-pointing triangle marker

"pentagram"五角形

Sample of pentagram marker

"hexagram"六角形

Sample of hexagram marker

散点图对象的 Marker 属性存储标记符号。

包含要绘制的数据的源表,指定为表或时间表。

包含 theta 值的表变量,指定为一个或多个表变量索引。

指定表索引

使用以下任一索引方案指定所需的一个或多个变量。

索引方案示例

变量名称:

  • 字符串、字符向量或元胞数组。

  • pattern 对象。

  • "A"'A' - 名为 A 的变量

  • ["A","B"]{'A','B'} - 两个名为 AB 的变量

  • "Var"+digitsPattern(1) - 变量名为 "Var" 后跟一个数字

变量索引:

  • 引用变量在表中位置的索引编号。

  • 由数字组成的向量。

  • 逻辑向量。通常,此向量的长度与变量的数目相同,但可以省略尾部的 0false 值。

  • 3 - 表中的第三个变量

  • [2 3] - 表中的第二个和第三个变量

  • [false false true] - 第三个变量

变量类型:

  • vartype 下标,用于选择指定类型的变量。

  • vartype("categorical") - 包含分类值的所有变量

绘制您的数据

您指定的表变量可以包含任何数值数据类型。

要绘制一个数据集,请为 thetavar 指定一个变量,为 rhovar 指定一个变量。例如,创建一个包含三个变量的表。绘制 ThR1 变量。

% Create a table of random numbers
Th = linspace(0,2*pi,10)';
R1 = randi([0 10],10,1);
R2 = randi([20 30],10,1);
tbl = table(Th,R1,R2);

% Create polar scatter chart
polarscatter(tbl,'Th','R1')

要一起绘制多个数据集,请为 thetavarrhovar 或两者指定多个变量。如果为两个参数都指定多个变量,则每个参数的变量数目必须相同。

例如,在 theta 轴上绘制 Th 变量,在 r 轴上绘制 R1R2 变量。

polarscatter(tbl,'Th',{'R1','R2'})

您还可以对表变量使用不同索引方案。例如,将 thetavar 指定为变量名称,将 rhovar 指定为索引编号。

polarscatter(tbl,'Th',2)

包含 rho 值的表变量,指定为一个或多个表变量索引。

指定表索引

使用以下任一索引方案指定所需的一个或多个变量。

索引方案示例

变量名称:

  • 字符串、字符向量或元胞数组。

  • pattern 对象。

  • "A"'A' - 名为 A 的变量

  • ["A","B"]{'A','B'} - 两个名为 AB 的变量

  • "Var"+digitsPattern(1) - 变量名为 "Var" 后跟一个数字

变量索引:

  • 引用变量在表中位置的索引编号。

  • 由数字组成的向量。

  • 逻辑向量。通常,此向量的长度与变量的数目相同,但可以省略尾部的 0false 值。

  • 3 - 表中的第三个变量

  • [2 3] - 表中的第二个和第三个变量

  • [false false true] - 第三个变量

变量类型:

  • vartype 下标,用于选择指定类型的变量。

  • vartype("categorical") - 包含分类值的所有变量

绘制您的数据

您指定的表变量可以包含任何数值数据类型。

要绘制一个数据集,请为 thetavar 指定一个变量,为 rhovar 指定一个变量。例如,创建一个包含三个变量的表。绘制 ThR1 变量。

% Create a table of random numbers
Th = linspace(0,2*pi,10)';
R1 = randi([0 10],10,1);
R2 = randi([20 30],10,1);
tbl = table(Th,R1,R2);

% Create polar scatter chart
polarscatter(tbl,'Th','R1')

要一起绘制多个数据集,请为 thetavarrhovar 或两者指定多个变量。如果为两个参数都指定多个变量,则每个参数的变量数目必须相同。

例如,在 theta 轴上绘制 Th 变量,在 r 轴上绘制 R1R2 变量。

polarscatter(tbl,'Th',{'R1','R2'})

您还可以对表变量使用不同索引方案。例如,将 thetavar 指定为变量名称,将 rhovar 指定为索引编号。

polarscatter(tbl,'Th',2)

PolarAxes 对象。如果您不指定极坐标区,polarscatter 将使用当前坐标区。polarscatter 不支持在笛卡尔坐标区中绘图。

名称-值参数

将可选的参数对组指定为 Name1=Value1,...,NameN=ValueN,其中 Name 是参数名称,Value 是对应的值。名称-值参数必须出现在其他参数之后,但参数对组的顺序无关紧要。

在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。

示例: polarscatter(th,r,'filled','MarkerFaceAlpha',.5) 创建经过填充的半透明标记。

此处列出的散点图对象属性只是其中的一部分。有关完整列表,请参阅 Scatter 属性

标记面透明度,指定为 [0,1] 范围中的标量。值为 1 表示不透明,值为 0 表示透明。介于 0 和 1 之间的值表示半透明。

标记轮廓颜色,指定为 "flat"、RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认值 "flat" 将使用 CData 属性中的颜色。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

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

RGB 三元组十六进制颜色代码外观
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

示例: [0.5 0.5 0.5]

示例: "blue"

示例: "#D2F9A7"

标记填充颜色,指定为 "flat""auto"、RGB 三元组、十六进制颜色代码、颜色名称或短名称。"flat" 选项使用 CData 值。"auto" 选项使用与坐标区的 Color 属性相同的颜色。

对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。

  • RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于 [0,1] 范围内,例如 [0.4 0.6 0.7]

  • 十六进制颜色代码是字符串标量或字符向量,以井号 (#) 开头,后跟三个或六个十六进制数字,范围可以是 0F。这些值不区分大小写。因此,颜色代码 "#FF8800""#ff8800""#F80""#f80" 是等效的。

此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。

颜色名称短名称RGB 三元组十六进制颜色代码外观
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"不适用不适用不适用无颜色

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

RGB 三元组十六进制颜色代码外观
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

示例: [0.3 0.2 0.1]

示例: "green"

示例: "#D2F9A7"

标记边的宽度,指定为一个正值(以磅为单位)。

示例: 0.75

包含颜色数据的表变量,指定为源表的变量索引。

指定表索引

使用以下任一索引方案指定所需的变量。

索引方案示例

变量名称:

  • 字符串标量或字符向量。

  • pattern 对象。模式对象只能引用一个变量。

  • "A"'A' - 名为 A 的变量

  • "Var"+digitsPattern(1) - 名称为 "Var" 的变量后跟一位数字

变量索引:

  • 引用变量在表中位置的索引编号。

  • 逻辑向量。通常,此向量的长度与变量的数目相同,但可以省略尾部的 0false 值。

  • 3 - 表中的第三个变量

  • [false false true] - 第三个变量

变量类型:

  • vartype 下标,用于选择指定类型的表变量。该下标只能引用一个变量。

  • vartype("double") - 包含双精度值的变量

指定颜色数据

指定 ColorVariable 属性控制标记的颜色。当 MarkerFaceColor 属性设置为 "flat" 时,变量中的数据控制标记填充颜色。当 MarkerEdgeColor 设置为 "flat" 时,数据还可以控制标记轮廓颜色。

您指定的表变量可以包含任何数值类型的值。这些值可以是以下形式之一:

  • 线性映射到当前颜色图中的一列数字。

  • 由 RGB 三元组组成的一个三列数组。RGB 三元组是包含三个元素的向量,其元素值指定特定颜色的红、绿和蓝分量的强度。强度必须处于范围 [0,1] 中。例如,[0.5 0.7 1] 指定浅蓝色。

当您设置 ColorVariable 属性时,MATLAB 会更新 CData 属性。

版本历史记录

在 R2016b 中推出

全部展开