在"用mesh( )函数绘制三维网格图"中实现了三维网格的绘制,昨天的两篇博文分别用plot3( )函数和surf( )函数实现了三维曲线和三维曲面的绘制。这篇博文就把这三种三维图放在一起,用subplot( )分割窗口的形式呈现。
已知:x=(8+3*cos(Y))*cos(X),y=(8+3*cos(Y))*sin(X),z=3*sin(Y)。
要求:绘制[0,2π]区间的三种三维图,即三维网格图、三维曲面图和三维曲线图。
在命令窗口输入以下程序:
Matlab
t=linspace(0,2*pi,60);
[X,Y]=meshgrid(t);
x=(8+3*cos(Y))*cos(X);
y=(8+3*cos(Y))*sin(X);
z=3*sin(Y);
subplot(1,3,1)
mesh(x,y,z)
title('三维网格图')
xlabel('x轴')
ylabel('y轴')
zlabel('z轴')
subplot(1,3,2)
surf(x,y,z)
title('三维曲面图')
xlabel('x轴')
ylabel('y轴')
zlabel('z轴')
subplot(1,3,3)
plot3(x,y,z)
title('三维曲线图')
xlabel('x轴')
ylabel('y轴')
zlabel('z轴')
运行后如图1所示。

图1 Matlab中三种三维图的对比