填充的二维等高线图
contourf(
创建一个包含矩阵
Z
)
Z
的等值线的填充等高线图,其中
Z
包含
x
-
y
平面上的高度值。MATLAB
®
会自动选择要显示的等高线。
Z
的列和行索引分别是平面中的
x
和
y
坐标。
contourf(
___
,
将要显示的等高线指定为上述任一语法中的最后一个参量。将
levels
)
levels
指定为标量值
n
,以在
n
个自动选择的层级(高度)上显示等高线。要在某些特定高度绘制等高线,请将
levels
指定为单调递增值的向量。要在一个高度 (
k
) 绘制等高线,请将
levels
指定为二元素行向量
[k k]
。
contourf(
___
,
使用一个或多个名称-值对组参量指定等高线图的其他选项。请在所有其他输入参量之后指定这些选项。有关属性列表,请参阅
Contour 属性
。
Name,Value
)
contourf(
在目标坐标区中显示等高线图。将坐标区指定为上述任一语法中的第一个参量。
ax
,
___
)
返回等高线矩阵
M
= contourf(
___
)
M
,其中包含每个层级的顶点的 (
x
,
y
) 坐标。
将
Z
定义为两个变量的函数。在本例中,调用
peaks
函数以创建
Z
。然后显示
Z
的填充等高线图,让 MATLAB® 选择等高线层级。
Z = peaks; contourf(Z)
将
Z
定义为两个变量
X
和
Y
的函数。然后在
Z
的 10 个层级上显示等高线。
x = linspace(-2*pi,2*pi); y = linspace(0,4*pi); [X,Y] = meshgrid(x,y); Z = sin(X) + cos(Y); contourf(X,Y,Z,10)
将
Z
定义为
X
和
Y
的函数。在本例中,调用
peaks
函数以创建
X
、
Y
和
Z
。然后显示层级
2
和
3
上的等高线。
白色区域对应于小于
2
的高度。紫色区域对应于
2
和
3
之间的高度。黄色区域对应于大于
3
的高度。
[X,Y,Z] = peaks(50); contourf(X,Y,Z,[2 3],'ShowText','on')
自 R2022b 开始提供
创建一个显示标签的等高线图,标签表示为小数点后带一位数字并后跟字母
m
。通过将
FaceAlpha
属性设置为
0.25
来指定部分透明的填充颜色。
contourf(peaks,[-4 0 2],"ShowText",true,"LabelFormat","%0.1f m", ... "FaceAlpha",0.25)
自 R2022b 开始提供
当需要计算值时,可以指定函数来格式化标签。例如,您可以定义一个函数来计算不同单位的标签值。
在名为
mylabelfun.m
的程序文件中定义此函数。该函数将输入从米转换为英尺,并返回一个字符串向量,其中包含以米为单位的每个值,并用括号括起相应的以英尺为单位的值。
接下来,创建一个等高线图,并将
LabelFormat
属性指定为
mylabelfun
的句柄。通过将
FaceAlpha
值设置为
0.25
,指定部分透明的填充颜色。
contourf(peaks,[-4 0 2],"ShowText",true,"LabelFormat",@mylabelfun, ... "FaceAlpha",0.25)
将
Z
定义为
X
和
Y
的函数。在本例中,调用
peaks
函数以创建
X
、
Y
和
Z
。然后在
Z = 2
处显示等高线。
[X,Y,Z] = peaks; contourf(X,Y,Z,[2 2])
在曲面上任何不连续的位置插入
NaN
值。
contourf
函数不会在这些区域中绘制等高线。
将矩阵
Z
定义为
peaks
函数的采样。将列
26
中的所有值替换为
NaN
值。然后绘制修改后的
Z
矩阵的等高线。
Z = peaks; Z(:,26) = NaN; contourf(Z)
X
—
x
坐标
x
坐标,指定为大小与
Z
相同的矩阵或长度为
n
的向量,其中
[m,n] = size(Z)
。
X
的默认值是向量
(1:n)
。
当
X
是矩阵时,这些值必须在一个维度上严格递增或递减,而在另一个维度上保持不变。这个变化的维度必须与在
Y
中变化的维度相反。您可以使用
meshgrid
函数创建
X
和
Y
矩阵。
当
X
是向量时,值必须严格递增或递减。
示例:
X = 1:10
示例:
X = [1 2 3; 1 2 3; 1 2 3]
示例:
[X,Y] = meshgrid(1:10)
Contour
对象的
XData
属性存储
x
坐标。
数据类型:
single
|
double
|
int8
|
int16
|
int32
|
int64
|
uint8
|
uint16
|
uint32
|
uint64
Y
—
y
坐标
y
坐标,指定为大小与
Z
相同的矩阵或长度为
m
的向量,其中
[m,n] = size(Z)
。
Y
的默认值是向量
(1:m)
。
当
Y
是矩阵时,这些值必须在一个维度上严格递增或递减,而在另一个维度上保持不变。这个变化的维度必须与在
X
中变化的维度相反。您可以使用
meshgrid
函数创建
X
和
Y
矩阵。
当
Y
是向量时,值必须严格递增或递减。
示例:
Y = 1:10
示例:
Y = [1 1 1; 2 2 2; 3 3 3]
示例:
[X,Y] = meshgrid(1:10)
Contour
对象的
YData
属性存储
y
坐标。
数据类型:
single
|
double
|
int8
|
int16
|
int32
|
int64
|
uint8
|
uint16
|
uint32
|
uint64
Z
—
z
坐标
z 坐标,指定为矩阵。此矩阵必须至少包含两行两列,并且必须至少包含两个不同值。
示例:
Z = peaks(20)
Contour
对象的
ZData
属性存储
z
坐标。
数据类型:
single
|
double
|
int8
|
int16
|
int32
|
int64
|
uint8
|
uint16
|
uint32
|
uint64
levels
—
层级
等高线层级,指定为整数标量或向量。使用此参量可控制等高线的数量和位置。如果未指定层级,
contourf
函数会自动选择层级。
要在 n 个自动选择的高度处绘制等高线,请将
levels
指定为标量值 n。
要在某些特定高度绘制等高线,请将
levels
指定为单调递增值的向量。
要在单个高度
k
处绘制等高线,请将
levels
指定为二元素行向量
[k k]
。
contourf
函数使用当前颜色图来填充绘图中各层级之间的空间。第一种颜色填充最低层级与其上一层级之间的空间。最后一种颜色对应于大于绘图中最高层级的
Z
值。如果
Z
包含的值小于绘图中显示的最低层级,则最低层级和最小
Z
值之间的区域为白色。
示例:
contourf(peaks,10)
在
peaks
函数上 10 个自动选择的高度处绘制等高线。
示例:
contourf(peaks,[-4 0 4])
在
peaks
函数上的 3 个特定高度处绘制等高线:
-4
、
0
和
4
。
示例:
contourf(peaks,[3 3])
绘制等高线以显示
peaks
函数的高度为
3
的位置。
数据类型:
single
|
double
|
int8
|
int16
|
int32
|
int64
|
uint8
|
uint16
|
uint32
|
uint64
LineSpec
—
线型和颜色
线型和颜色,指定为包含字符和符号的字符向量或字符串标量。字符和符号可以按任何顺序出现。您可以指定线型和/或线条颜色。忽略
'o'
等标记符号。
示例:
'--g'
表示绿色虚线。
线型 | 描述 | 表示的线条 | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
"-"
|
实线 |
|
|||||||||||||||||||||||||||
"--"
|
虚线 |
|
|||||||||||||||||||||||||||
":"
|
点线 |
|
|||||||||||||||||||||||||||
"-."
|
点划线 |
|