资源描述:
《基于MATLAB三维曲面图.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、MATLAB程式設計入門篇三維立體繪圖4-1基本立體繪圖指令mesh和surf:mesh:可畫出立體的「網狀圖」(MeshPlots)surf:可畫出立體的「曲面圖」(SurfacePlots)範例4-1: plotxyz001.mz=[021;324;444;768];mesh(z);xlabel('X軸=columnindex');%X軸的說明文字ylabel('Y軸=rowindex');%Y軸的說明文字4-1基本立體繪圖指令範例4-1:plotxyz001.m4-1基本立體繪圖指令範例4-2:plotxyz002.m若要將與曲面對應的x座標和y座標都一併畫出來,還是可以使用mes
2、h指令z=[021;324;444;768];mesh(z);xlabel('X軸=columnindex');%X軸的說明文字ylabel('Y軸=rowindex');%Y軸的說明文字fori=1:size(z,1)forj=1:size(z,2)h=text(j,i,z(i,j),num2str(z(i,j)));%標示曲面高度set(h,'hori','center','vertical','bottom','color','r');%改變位置及顏色endend4-1基本立體繪圖指令範例4-2:plotxyz002.m4-1基本立體繪圖指令範例4-3:plotxyz011.mmes
3、hgrid的作用是產生x及y(均為向量)為基準的格子點(GridPoints),其輸出為xx及yy(均為矩陣),分別代表格子點的x座標及y座標。4-1基本立體繪圖指令範例4-3:plotxyz011.mx=3:6;y=5:9;[xx,yy]=meshgrid(x,y);%xx和yy都是矩陣zz=xx.*yy;%計算函數值zz,也是矩陣subplot(2,2,1);mesh(xx);title('xx');axistightsubplot(2,2,2);mesh(yy);title('yy');axistightsubplot(2,2,3);mesh(xx,yy,zz);title('zz對
4、xx及yy作圖');axistightcolormap(zeros(1,3));%以黑色呈現4-1基本立體繪圖指令範例4-3:plotxyz011.m範例4-4:plotxyz01.m使用linspace來產生較密集的資料,以便畫出由函數形成的立體網狀圖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都是25×25的矩陣zz=xx.*exp(-xx.^2-yy.^2);%計算函數值,zz也是25×25的矩陣mesh(xx,yy,zz);%畫
5、出立體網狀圖4-1基本立體繪圖指令4-1基本立體繪圖指令範例4-4:plotxyz01.m範例4-5:plotxyz01.msurf和mesh指令的用法類似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都是25×25的矩陣zz=xx.*exp(-xx.^2-yy.^2);%zz也是25×2的矩陣surf(xx,yy,zz);%畫出立體曲面圖4-1基本立體繪圖指令4-1基本立體繪圖指令範例4-5:plotxyz01.m4-1基本立體繪圖指令
6、peaks:為了方便測試立體繪圖,MATLAB提供了一個peaks函數,可產生一個凹凸有致的曲面,包含了三個局部極大點(LocalMaxima)及三個局部極小點(LocalMinima)其方程式為:4-1基本立體繪圖指令畫出此函數的最快方法,即是在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)4-1基本立體繪圖指令peaks的圖形4-1基本立體繪圖指令meshz:meshz指令有將
7、曲面加上「圍裙」或「舞台」的效果範例4-6:plotxyz03.m[x,y,z]=peaks;meshz(x,y,z);axistight;4-1基本立體繪圖指令範例4-6:plotxyz03.m4-1基本立體繪圖指令waterfall:waterfall指令可在x方向或y方向產生水流效果範例4-7:plotxyz04.m[x,y,z]=peaks;waterfall(x,y,z);axistight;4-1基本立體繪圖