填充区二维绘图
全页折叠
语法
area(X,Y)
area(Y)
area(___,basevalue)
area(___,Name,Value)
area(ax,___)
a = area(___)
说明
示例
area(X,Y)
绘制 Y
中的值对 x 坐标 X
的图。然后,该函数根据 Y
的形状填充曲线之间的区域:
如果
Y
是向量,则该图包含一条曲线。area
填充该曲线和水平轴之间的区域。如果
Y
是矩阵,则该图对Y
中的每列都包含一条曲线。area
填充这些曲线之间的区域并堆叠它们,从而显示在每个 x 坐标处每个行元素在总高度中的相对量。
示例
area(Y)
绘制 Y
对一组隐式 x 坐标的图,并填充曲线之间的区域。
如果
Y
是向量,则 x 坐标范围从 1 到length(Y)
。如果
Y
是矩阵,则 x 坐标的范围是从 1 到Y
中的行数。
示例
area(___,basevalue)
指定区域图的基线值。basevalue
对应于水平基线。area
填充曲线和这条线之间的区域。将 basevalue
指定为上述任一语法中的最后一个参量。
示例
area(___,Name,Value)
使用一个或多个名称-值对组参量修改区域图的属性。这些属性适用于所有显示区域。例如,'LineStyle','--'
为绘图指定虚线线型。需要在上述任一语法中的所有参量之后指定名称-值对组。有关属性列表,请参阅 Area 属性。
示例
area(ax,___)
在目标坐标区上显示区域图。将坐标区指定为上述任一语法中的第一个参量。
示例
a = area(___)
返回一个或多个 Area
对象。对象的数量等于绘制区域的数量。创建区域后,使用 a
修改区域的属性。有关属性列表,请参阅 Area 属性。
示例
全部折叠
创建包含一条曲线的区域图
打开实时脚本
创建一个包含四个值的向量。在区域图中显示这些值。
y = [1 5 6 3];area(y)
创建包含多条曲线的区域图
打开实时脚本
创建矩阵 Y
。然后将 Y
中的值显示为一个区域图。由于 Y
包含三列,area
绘制三条曲线并将其堆叠。
Y = [1 5 3; 3 2 7; 1 5 3; 2 6 1];area(Y)
使用水平轴值创建区域图
打开实时脚本
将 x
定义为一个包含三个汽车经销商 ID 的向量。将 Y
定义为矩阵,其中包含每个车型售出的汽车数量。在区域图中显示矩阵中的值。然后添加轴标签和图例。
x = [10 11 12];Y = [21.6 25.4; 70.8 66.1; 58.0 43.6];area(x,Y)xlabel('Dealership ID')ylabel('Sales')legend({'Model A','Model B'})
沿 x 轴设置对应 x
中各值的刻度线。
ax = gca; % current axesax.XTick = x;
调整区域图的基线值
打开实时脚本
创建矩阵 Y
。然后在基线值为 -4
的区域图中显示 Y
的值。area
填充由曲线和直线 y = -4
指定的区域。
Y = [1 5 3; 3 2 7; 1 5 3; 2 6 1];basevalue = -4;area(Y,basevalue)
指定区域图的线型
打开实时脚本
创建矩阵 Y
。在使用点线样式的区域图中显示 Y
的值。
Y = [1 3 5; 3 2 7; 3 4 2];area(Y,'LineStyle',':')
将填充区域绘制到目标坐标区中
打开实时脚本
创建一个采用 'flow'
图块排列方式的分块图布局,以便坐标区填充布局中的可用空间。接下来,调用 nexttile
函数创建一个 Axes
对象,并返回它作为 ax1
。通过将 ax1
传递给 area
函数来显示区域图。
tiledlayout('flow')ax1 = nexttile;Y1 = [3 6; 1 5; 7 2; 5 9];area(ax1,Y1)
重复该过程以创建第二个 Axes
对象和第二个区域图。
ax2 = nexttile;Y2 = [4 2 11; 5 6 0; 1 7 2; 9 5 9];area(ax2,Y2)
绘图后更改区域特性
打开实时脚本
创建矩阵 Y
。然后创建一个区域图,在调用 area
函数时指定输出参量。在本例中,area
返回包含三个 Area
对象的向量。每个对象对应于 Y
的一个不同列。
Y = [2 3 4; 6 1 5; 7 4 9];a = area(Y);
将第二个区域改为绿色,并使用加粗的红边。
a(2).FaceColor = [0.2 0.6 0.5];a(2).EdgeColor = [0.63 0.08 0.18];a(2).LineWidth = 2;
在区域图中设置颜色
打开实时脚本
显示一个具有三条曲线的区域图。
area([1 5 3; 3 2 7; 1 5 3; 2 6 1])
将色序设置为蓝色、紫色和灰色。
newcolors = [0 0.5 1; 0.5 0 1; 0.7 0.7 0.7];colororder(newcolors)
输入参数
全部折叠
X
— x 坐标
向量 | 矩阵
x 坐标,指定为向量或矩阵。X
的大小和形状取决于您的数据形状和您要创建的绘图类型。下表说明了最常见的情况。
绘图类型 | 如何指定坐标 |
---|---|
单一区域 | 指定 area([1 3 5],[9; 4; 6]) X 为递增值向量。如果 X 的值不增加,则 area 将在绘制之前对值进行排序。 |
堆叠区域 |
area([1 2 3 4],[3 6; 1 5; 7 2; 5 9]) X 的值不增加,则 area 将在绘制之前对值进行排序。您也可以将 |
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
| datetime
| duration
Y
— y 坐标
向量 | 矩阵
y 坐标,指定为向量或矩阵。Y
的大小和形状取决于您的数据形状和您要创建的绘图类型。下表说明可能的情况。
绘图类型 | 如何指定坐标 |
---|---|
单一区域 | 指定 area([1 3 5],[9; 4; 6]) X 为递增值向量。如果 X 的值不增加,则 area 将在绘制之前对值进行排序。 |
堆叠区域 |
area([1 2 3 4],[3 6; 1 5; 7 2; 5 9]) X 的值不增加,则 area 将在绘制之前对值进行排序。您也可以将 |
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| duration
basevalue
— 基线值
0
(默认) | 数值标量
基线值,指定为数值标量。基线值指定水平基线的 y 坐标。area
填充数据曲线和此基线之间的区域。
ax
— 目标坐标区
Axes
对象
目标坐标区,指定为 Axes
对象。如果未指定坐标区,则 area
在当前坐标区中显示绘图。
名称-值参数
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: area([1 2 3],'FaceColor','r')
为区域指定红色填充颜色。
注意
此处所列的属性只是一部分。有关完整列表,请参阅 Area 属性。
FaceColor
— 区域填充颜色
RGB 三元组 | 十六进制颜色代码 | 'r'
| 'g'
| 'b'
| 'flat'
| ...
区域填充颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或 'flat'
。
从 R2017b 开始,默认值是来自坐标区的 ColorOrder
属性的一个 RGB 三元组。在以前的版本中,默认值为 'flat'
,且颜色基于颜色图。
对于自定义颜色,请指定 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" | 不适用 | 不适用 | 不适用 | 无颜色 |
以下是 MATLAB® 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。
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" |
EdgeColor
— 区域轮廓的颜色
[0 0 0]
(默认) | RGB 三元组 | 'r'
| 'g'
| 'b'
| 'flat'
| ...
区域轮廓颜色,指定为 RGB 三元组、十六进制颜色代码、颜色名称或 'flat'
。将此属性指定为 'flat'
将使用颜色图的颜色。
对于自定义颜色,请指定 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" | 不适用 | 不适用 | 不适用 | 无颜色 |
以下是 MATLAB 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。
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" |
LineWidth
— 区域轮廓宽度
0.5
(默认) | 数值标量
区域轮廓宽度,指定为数值标量(以磅为单位)。一磅等于 1/72 英寸。
示例: 1.5
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
提示
area
使用基于坐标区的 ColorOrder 属性的颜色。它循环使用所有颜色,如果绘制的填充区域数大于颜色数,它就会重复此循环。从 R2019b 开始,通过在坐标区中设置
ColorOrder
属性,可以在绘图后更改颜色。您也可以调用 colororder 函数来更改图窗中所有坐标区的色序。
扩展功能
GPU 数组
通过使用 Parallel Computing Toolbox™ 在图形处理单元 (GPU) 上运行来加快代码执行。
用法说明和限制:
此函数接受 GPU 数组,但不在 GPU 上运行。
有关详细信息,请参阅Run MATLAB Functions on a GPU (Parallel Computing Toolbox)。
分布式数组
使用 Parallel Computing Toolbox™ 在集群的组合内存中对大型数组进行分区。
用法说明和限制:
此函数在分布式数组上运行,但在客户端 MATLAB 中执行。
有关详细信息,请参阅Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox)。
版本历史记录
在 R2006a 之前推出
另请参阅
函数
- bar | plot
属性
- Area 属性
主题
- 使用叠加区域图对比数据集
- 对分类数据绘图
- 绘制日期时间
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 简体中文
- English
- 日本 (日本語)
- 한국 (한국어)
Contact your local office