MATLAB contour3()函数的用法(附带实例)
contour3() 是 MATLAB 三维绘图中最常用的绘制等值线的函数,该函数生成一个定义在矩形格栅上曲面的三维等值线图,它的调用格式及说明如下表所示。
【实例】绘制函数的等值线图。MATLAB 程序如下:

图 1 等值线图
调用格式 | 说明 |
---|---|
contour3(Z) | 画出三维空间角度观看矩阵 Z 的等值线图,其中 Z 的元素被认为是距离 xy 平面的高度,矩阵 Z 至少为 2 阶的。等值线的条数与高度是自动选择的。若[m,n]=size(Z),则 x 轴的范围为[1,n],y 轴的范围为[1,m] |
contour3(X,Y,Z) | 用 X 与 Y 定义 x 轴与 y 轴的范围。若 X 为矩阵,则 X(1,:)定义 x 轴的范围;若 Y 为矩阵,则 Y(:,1)定义 y 轴的范围;若 X 与 Y 同时为矩阵,则它们必须同型;若 X 或 Y 有不规则的间距,contour3 还是使用规则的间距计算等值线,然后将数据转变成给 X 或 Y |
contour3(...,n) | 画出由矩阵 Z 确定的 n 条等值线的三维图 |
contour3(...,v) | 在参数 v 指定的高度上画出三维等值线,当然等值线条数与向量 v 的维数相同。若想只画一条高度为 h 的等值线,则输入 contour3(Z,[h,h]) |
contour3(...,LineSpec) | 用参数 LineSpec 指定的线型与颜色画等值线 |
contour3(...,Name,Value) | 使用名称-值对组参数指定等值线图的属性 |
contour3(ax,...) | 在 ax 指定的目标坐标区中显示等值线图 |
[M,h] = contour3(...) | 画出图形,同时返回与命令 contour 中相同的等值线矩阵 m,包含所有图形对象的句柄向量 h |
【实例】绘制函数的等值线图。MATLAB 程序如下:
>> close all % 关闭当前已打开的文件 >> clear % 清除工作区的变量 >> t=-4:0.1:4; % 创建-4~4的向量t,元素间隔为0.1 >> [x,y]=meshgrid(t); % 通过向量t定义二维网格矩阵x、y >> z =sqrt(x.^2+y.^2); % 通过网格数据x、y定义函数表达式 z,得到二维矩阵z >> contour3(x,y,z); % 在x轴与y轴的坐标范围内创建一个包含矩阵 z 的等值线的三维等值线图 >> title('函数等值线图'); % 为图形添加标题 >> xlabel('x-axis'),ylabel('y-axis '),zlabel('z-axis') % 添加轴标签运行结果如下图所示:

图 1 等值线图