《维立体绘》PPT课件.ppt
《《维立体绘》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《维立体绘》PPT课件.ppt(64页珍藏版)》请在三一办公上搜索。
1、MATLAB 程序设计三维立体绘图,10-1 基本立体绘图指令,mesh 和 surf:mesh:可画出立体的网状图(Mesh Plots)surf:可画出立体的曲面图(Surface Plots),z=0 2 1;3 2 4;4 4 4;7 6 8;mesh(z);xlabel(X 轴=column index);%X 轴的说明文字ylabel(Y 轴=row index);%Y 轴的说明文字,10-1 基本立体绘图指令,10-1 基本立体绘图指令,若要将与曲面对应的 x 坐标和 y 坐标都一并画出来,还是可以使用 mesh 指令,z=0 2 1;3 2 4;4 4 4;7 6 8;mesh
2、(z);xlabel(X 轴=column index);%X 轴的说明文字ylabel(Y 轴=row index);%Y 轴的说明文字for i=1:size(z,1)for j=1:size(z,2)h=text(j,i,z(i,j),num2str(z(i,j);%标示曲面高度set(h,hori,center,vertical,bottom,color,r);%改变位置及颜色endend,10-1 基本立体绘图指令,10-1 基本立体绘图指令,meshgrid 的作用是产生 x 及 y(均为向量)为基准的格子点(Grid Points),其输出为 xx 及 yy(均为矩阵),分别代表
3、格子点的 x 坐标及 y 坐标。,10-1 基本立体绘图指令,x=3:6;y=5:9;xx,yy=meshgrid(x,y);%xx 和 yy 都是矩阵 zz=xx.*yy;%计算函数值 zz,也是矩阵subplot(2,2,1);mesh(xx);title(xx);axis tightsubplot(2,2,2);mesh(yy);title(yy);axis tightsubplot(2,2,3);mesh(xx,yy,zz);title(zz 对 xx 及 yy 作图);axis tight,10-1 基本立体绘图指令,使用 linspace 来产生较密集的数据,以便画出由函数 形成的
4、立体网状图,x=linspace(-2,2,25);%在 x 轴-2,2 之间取 25 点 y=linspace(-2,2,25);%在 y 轴-2,2 之间取 25 点 xx,yy=meshgrid(x,y);%xx 和 yy 都是 2525 的矩阵 zz=xx.*exp(-xx.2-yy.2);%计算函数值,zz 也是 2525 的矩阵mesh(xx,yy,zz);%画出立体网状图,10-1 基本立体绘图指令,10-1 基本立体绘图指令,surf 和 mesh 指令的用法类似,x=linspace(-2,2,25);%在 x 轴-2,2 之间取 25 点 y=linspace(-2,2,2
5、5);%在 y 轴-2,2 之间取 25 点 xx,yy=meshgrid(x,y);%xx 和 yy 都是 2525 的矩阵 zz=xx.*exp(-xx.2-yy.2);%zz 也是 252 的矩阵 surf(xx,yy,zz);%画出三维曲面图,10-1 基本立体绘图指令,10-1 基本立体绘图指令,10-1 基本立体绘图指令,peaks:为了方便测试立体绘图,MATLAB 提供了一个 peaks 函数,可产生一个凹凸有致的曲面,包含了三个局部极大点(Local Maxima)及三个局部极小点(Local Minima)其方程式为:,10-1 基本立体绘图指令,画出此函数的最快方法,即是
6、在 MATLAB 命令窗口直接键入 peaks,可得到下列方程式,z=3*(1-x).2.*exp(-(x.2)-(y+1).2).-10*(x/5-x.3-y.5).*exp(-x.2-y.2).-1/3*exp(-(x+1).2-y.2),10-1 基本立体绘图指令,peaks的图形,10-1 基本立体绘图指令,meshz:meshz 指令有将曲面加上围裙或舞台的效果,x,y,z=peaks;meshz(x,y,z);axis tight;,10-1 基本立体绘图指令,10-1 基本立体绘图指令,waterfall:waterfall 指令可在 x 方向或 y 方向产生水流效果,x,y,z
7、=peaks;waterfall(x,y,z);axis tight;,10-1 基本立体绘图指令,10-1 基本立体绘图指令,meshc:meshc 可同时画出网状图与等高线(Contours),x,y,z=peaks;meshc(x,y,z);axis tight;,10-1 基本立体绘图指令,10-1 基本立体绘图指令,plot3:plot3 指令可画出三度空间中的曲线,t=linspace(0,20*pi,501);%在 0 及 20*pi 中间取 501 点 plot3(t.*sin(t),t.*cos(t),t);%画出 tsin(t),tcos(t),t 的曲线,10-1 基本立
8、体绘图指令,10-1 基本立体绘图指令,plot3:亦可同时画出两条三度空间中的曲线,t=linspace(0,10*pi,501);plot3(t.*sin(t),t.*cos(t),t,t.*sin(t),t.*cos(t),-t);%同时画两条曲线,10-1 基本立体绘图指令,10-1 基本立体绘图指令,plot3:如果输入自变量是三个大小相同的矩阵 x、y、z,那么 plot3 会依序画出每个行向量在三度空间所对应的曲线,x,y=meshgrid(-2:0.1:2);z=y.*exp(-x.2-y.2);plot3(x,y,z);,10-1 基本立体绘图指令,10-1 基本立体绘图指令
9、,plot3:上例中,所有的数据点都必需是在格子点上,MATLAB 才能根据每点的高度来作图。如果所给的数据点不在格子点上,我们必需先用 griddata 指令来进行内插法以产生格子点,10-1 基本立体绘图指令,x=6*rand(100,1)-3;%x 为介于-3,3 的 100 点随机数 y=6*rand(100,1)-3;%y 为介于-3,3 的 100 点随机数 z=peaks(x,y);%z 为 peaks 指令产生的 100 点输出 X,Y=meshgrid(-3:0.1:3);Z=griddata(x,y,z,X,Y,cubic);mesh(X,Y,Z);hold onplot3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 维立体绘 立体 PPT 课件
链接地址:https://www.31ppt.com/p-5641716.html