三维绘图
1 三维绘图指令
网状图
mesh, ezmesh
绘制立体网状图
meshc, ezmeshc
绘制带有等高线的网状图
meshz
绘制带有“围裙”的网状图
曲面图
surf, ezsurf
立体曲面图
surfc, ezsurfc
绘制带有等高线的曲面图
surfl
绘制带有光源的曲面图
曲线图
plot3, ezplot3
绘制立体曲线图
底层函数
surface
Surf函数用到的底层指令
line3
plot3函数用到的底层指令
等高线
contour3
linspace函数调用的格式为
绘制等高线
水流效果
waterfall
在x方向或y方向产生水流效果
影像表示
pcolor
在二维平面中以颜表示曲面的高度
2 基本XYZ立体绘图命令
mesh和plot是三度空间立体绘图的基本命令,mesh可画出立体网状图,plot则可画出立体曲面图,两者产生的图形都会依高度而有不同颜。下列命令可画出由函数形成的立体网状图:
x=linspace(-2, 2, 25); % x轴上取25
y=linspace(-2, 2, 25); % y轴上取25
[xx,yy]=meshgrid(x, y); % xxyy都是25x25的矩阵
zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是21x21的矩阵
mesh(xx, yy, zz); % 画出立体网状图
surfmesh的用法类似:
x=linspace(-2, 2, 25); % x轴上取25
y=linspace(-2, 2, 25); % y轴上取25
[xx,yy]=meshgrid(x, y); % xxyy都是25x25的矩阵
zz=xx.*exp(-xx.^2-yy.^2); % 计算函数值,zz也是25x25的矩阵
surf(xx, yy, zz); % 画出立体曲面图
peaks
为了方便测试立体绘图,MATLAB提供了一个peaks函数,可产生一个凹凸有致的曲面,包含了三个局部极大点及三个局部极小点,其方程式为: