跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

matlab中contour 函数的用法(绘制等高线)

原文 contour 矩阵的等高线图 全页折叠 语法

contour(Z)contour(Z,n)contour(Z,v)contour(X,Y,Z)contour(X,Y,Z,n)contour(X,Y,Z,v)contour(...,LineSpec)contour(...,Name,Value)contour(ax,...)[C,h] = contour(...)

说明 等高线图显示矩阵

Z

的等值线。

使用

clabel

为等高线添加标签。

contour(Z)

绘制矩阵

Z

的等高线图,其中

Z

解释为有关 x - y 平面的高度。

Z

必须至少是 2×2 矩阵,该矩阵包含至少两个不同值。

x 值对应于

Z

的列索引, y 值对应于

Z

的行索引。

自动选择等高线层级。

contour(Z,n)

n

个等高线层级绘制矩阵

Z

的等高线图,其中

n

为标量。

自动选择等高线层级。

contour(Z,v)

绘制矩阵

Z

的等高线图,其中等高线位于单调递增向量

v

中指定的数据值。

要在特定值位置显示单个等高线,请将

v

定义为一个二元素向量,并且两个元素都等于所需的等高线层级。

例如,要在

k

层级绘制等高线,请使用

contour(Z,[k k])

指定向量

v

可将

LevelListMode

属性设置为 manual。

contour(X,Y,Z)

contour(X,Y,Z,n)

contour(X,Y,Z,v)

使用

X

Y

绘制

Z

的等高线图,以确定 x 和 y 值。

如果

X

Y

为向量,则

length(X)

必须等于

size(Z,2)

length(Y)

必须等于

size(Z,1)

这些向量必须是严格递增或严格递减的,并且不能包含任何重复值。

如果

X

Y

为矩阵,则其大小必须等于

Z

的大小。

通常,应设置

X

Y

以使列严格递增或严格递减并且行是均匀的(或者使行严格递增或严格递减并且列是均匀的)。

如果

X

Y

的间距不规律,

contour

将使用等间距的等高线网格计算等高线,然后转换成

X

Y

的数据。

contour(...,LineSpec)

使用

LineSpec

指定的线型和颜色绘制等高线。

contour

忽略标记符号。

contour(...,Name,Value)

使用一个或多个属性名-属性值对组指定等高线属性。

Name

是属性名且必须置于单引号 (

''

) 内。

Value

是对应的值。

例如,

'LineWidth',2

将等高线宽度设置为 2。

有关等高线属性名和值的列表,请参阅 Contour 属性 。

contour(ax,...)

将图形绘制到

ax

指定的坐标区中,而不是当前坐标区 (

gca

) 中。

[C,h] = contour(...)

返回等高线矩阵

C

(包含定义等高线的数据)和

Contour

对象

h

Contour

对象的

ContourMatrix

属性也包含等高线矩阵。

clabel

函数使用等高线矩阵标记等高线。

可以使用

Contour

对象属性控制等高线图外观。

有关列表,请参阅 Contour 属性 。

示例 全部折叠 创建等高线图 尝试此示例 使用

meshgrid

函数生成矩阵

X

Y

创建第三个矩阵

Z

并绘制其等高线。

x = linspace(-2*pi,2*pi);

y = linspace(0,4*pi); [X,Y] = meshgrid(x,y); Z = sin(X)+cos(Y);

figure contour(X,Y,Z)

指定等高线数 尝试此示例 将来自

peaks

函数的数据存储于矩阵

X

Y

Z

中。

Z

中的数据绘制 20 条等高线。

[X,Y,Z] = peaks;

figure contour(X,Y,Z,20)

显示等高线标签 尝试此示例 设置矩阵

X

Y

Z

通过将

ShowText

属性设置为

on

来创建一个等高线图并显示等高线标签。

x = -2:0.2:2;

y = -2:0.2:3; [X,Y] = meshgrid(x,y); Z = X.*exp(-X.^2-Y.^2);

figure contour(X,Y,Z,'ShowText','on')

显示单个等高线 尝试此示例 创建

peaks

函数的一个等高线图并仅显示

Z = 1

的一个等高线层级。

x = -3:0.125:3;

y = -3:0.125:3; [X,Y] = meshgrid(x,y); Z = peaks(X,Y); v = [1,1];

figure contour(X,Y,Z,v)

提示

contour

函数无法确定输入数据中是否存在不连续性。

NaN

值添加到数据中,以避免在这些区域中绘制等高线。

相关文章