本文主要介绍等高线图的绘制和画法。
说明
contour(Z)
创建一个包含矩阵Z
的等值线的等高线图,其中Z
包含 x-y 平面上的高度值。MATLAB® 会自动选择要显示的等高线。Z
的列和行索引分别是平面中的 x 和 y 坐标。
contour(X,Y,Z)
指定Z
中各值的 x 和 y 坐标。
contour(___,levels)
将要显示的等高线指定为上述任一语法中的最后一个参数。将levels
指定为标量值n
,以在n
个自动选择的层级(高度)上显示等高线。要在某些特定高度绘制等高线,请将levels
指定为单调递增值的向量。要在一个高度 (k
) 绘制等高线,请将levels
指定为二元素行向量[k k]
。
contour(___,LineSpec)
指定等高线的线型和颜色。
contour(___,Name,Value)
使用一个或多个名称-值对组参数指定等高线图的其他选项。请在所有其他输入参数之后指定这些选项。
contour(ax,___)
在目标坐标区中显示等高线图。将坐标区指定为上述任一语法中的第一个参数。
M
返回等高线矩阵M
,其中包含每个层级的顶点的 (x, y) 坐标。
[M,c] = contour(___)
返回等高线矩阵和等高线对象c
。显示等高线图后,使用c
设置属性。
用法
函数的等高线图
创建矩阵 X
和 Y
,用于在 x-y 平面中定义一个网格。将矩阵 Z
定义为该网格上方的高度。然后绘制 Z
的等高线。
x = linspace(-2*pi,2*pi);
y = linspace(0,4*pi);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(Y);
contour(X,Y,Z)
二十个层级等高线图绘制
将 Z
定义为 X
和 Y
的函数。在本例中,调用 peaks
函数以创建 X
、Y
和 Z
。然后绘制 Z
的 20 个等高线。
带标签的等高线图绘制
将 Z
定义为两个变量 X
和 Y
的函数。然后创建该函数的等高线图,并通过将 ShowText
属性设置为 'on'
来显示标签。
x = -2:0.2:2;
y = -2:0.2:3;
[X,Y] = meshgrid(x,y);
Z = X.*exp(-X.^2-Y.^2);
contour(X,Y,Z,'ShowText','on')
不连续曲面上的等高线图
在曲面上任何不连续的位置插入 NaN
值。contour
函数不会在这些区域中绘制等高线。
将矩阵 Z
定义为 peaks
函数的采样。将列 26
中的所有值替换为 NaN
值。然后绘制修改后的 Z
矩阵的等高线。
Z = peaks;
Z(:,26) = NaN;
contour(Z)