matlab空间曲面绘图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
空间曲面绘图
(1) 直接绘图-ezmesh 和ezsurf
ezmesh 绘制三维网格图,ezsurf 绘制三维表面图。 例1 绘制抛物柱面2x 2z −=的图形。 指令:ezmesh('2-x^2',[-1,1,-1,1])
图7.43
指令:ezsurf('2-x^2',[-1,1,-1,1])
图7.44
例2 绘制)xy sin(z =的图形。 指令:ezmesh('sin(x*y)',[0,4,0,4])
图7.45
例3 绘制马鞍面2y 2x z 2
2−=的图形。
指令:ezmesh('x^2/2-y^2/2')
图7.46
例4 绘制椭圆抛物面22x y 2z +=和抛物柱面2x 2z −=所围的图形。 ezmesh('2-x^2',[-1,1,-1,1]
hold on % 在同一图形窗口中继续绘图 ezmesh('2*y^2+x^2',[-1,1,-1,1]) axis([-1,1,-1,1,0,4])
图7.47
(2) 自定义网格绘图-meshgrid 和mesh/surf 例5 绘制23y x z −=的图形。
[x,y]=meshgrid(-2:0.2:2,-3:0.1:3) % 自定义网格数据 z=x.^3-y.^2 mesh(x,y,z)
图7.48
surf(x,y,z)
图7.49
contour3(x,y,z,50) %绘制50条三维等高线
图7.50
Contour(x,y,z,40) %绘制40条二维等高线
图7.51
例6 在同一坐标系中绘制23y x z −=和0z =的图形。 [x,y]=meshgrid(-2:0.2:2,-3:0.1:3) z=x.^3-y.^2 mesh(x,y,z)
zz=zeros(size(z)) hold on
mesh(x,y,zz)
图7.52
(3) 参数方程绘图
例7 绘制球面⎪⎩⎪
⎨⎧===u sin z )u cos()t sin(y )u cos()t cos(x 的图形。
[t,u]=meshgrid(0:0.1:2*pi,0:0.1:2*pi);
x=cos(t).*cos(u); y=sin(t).*cos(u); z=(sin(u))^2; mesh(x,y,z)
图7.53
例8 绘制⎪⎩
⎪
⎨⎧=+=+=u sin z )u cos 3(t sin y )u cos 3(t cos x 的图形。
[t,u]=meshgrid(0:0.1:2*pi,0:0.1:2*pi); x=cos(t).*(3+cos(u)); y=sin(t).*(3+cos(u)); z=sin(u);
mesh(x,y,z)
图7.54
(4) 球面绘图
命令形式1:sphere(n)—绘制单位球面,且球面上网格线条数为n 命令形式2:[x,y,z]=sphere(n)—x,y,z 返回(n+1)*(n+1)矩阵,且mesh(x,y,z)
或surf(x,y,z)绘制单位球面
例9 绘制单位球面
sphere(80)
图7.55
例10 绘制半径为3的球面
[x,y,z]=sphere(60);
mesh(3*x,3*y,3*z) % 半径为3
图7.56
例11 在同一坐标系中分别绘制半径为1和3的球面 [x,y,z]=sphere(60);
mesh(3*x,3*y,3*z)
hold on % 在同一坐标系中续绘图
mesh(x,y,z)
axis([-3,3,-3,3,-3,0]) % 设定显示坐标轴范围
图7.57
(5) 柱面绘图
绘制柱面需要确定母线与轴线,cylinder 命令中,轴线定为z 轴,r 表示柱面的母线,是一个向量。
命令形式1:cylinder(r,n)—绘制柱面,且柱面上网格线条数为n 命令形式2:[x,y,z]=cylinder(n)—x,y,z 返回(n+1)*(n+1)矩阵,且mesh(x,y,z)
或surf(x,y,z)绘制单位球面
例12 以母线为[1 2 3 4 5]绘制柱面 cylinder([1 2 3 4 5],150)
图7.58
例13 绘制柱面1y x 22=+与旋转曲面 subplot(1,2,1)
cylinder(1,150) % 绘制柱面 subplot(1,2,2)
cylinder(sqrt(abs(r)),80) % 绘制旋转曲面
图7.59