介紹3類(plot3/mesh/surf)7種三維圖像繪製的方法。
plot3 三維曲線圖;
mesh 三維網格圖;
meshc 除了生成網格圖外,還在xy平面生成曲面的等高線;
meshz 除了生成網格圖外,還在曲線下面加上個矩形垂簾;
surf 三維着色曲面圖;
surfc 同時畫出三維着色曲面圖與等高線;
surfl 帶光照的三維着色曲面圖。
(01)第一,plot3三維曲線圖。啟動MATLAB,新建腳本(.m文件),在腳本編輯區輸入以下代碼,然後保存運行後,看到以下三維曲線圖。close all;clear all;clcz=linspace(0,10,101);x=sin(z);y=cos(z);plot3(x,y,z,'g','LineWidth',2)hold onplot3(x,y,z,'p','MarkerSize',10)其中,linspace(a1,a2,N) 是生成間距為(a2-a1)/(N-1)、個數為N的數組的命令。
(02)第二,mesh三維網格圖。在腳本編輯區緊接着輸入以下代碼,保存運行後,看到以下三維網格圖。[a,b,c]=peaks(50);figure(2)mesh(a,b,c)axis tight其中,peaks(N)是生成一個凹凸有致的曲面,包含三個局部極大點及三個局部極小點的函數,其方程式略。
(03)第三,meshc除了生成網格圖外,還在xy平面生成曲面的等高線。將第二步中的mesh(a,b,c)改為meshc(a,b,c),然後保存運行後,看到以下三維網格圖+等高線的效果。
(04)第四,meshz除了生成網格圖外,還在曲線下面加上個矩形垂簾。將第三步中的meshc(a,b,c)改為meshz(a,b,c),然後保存運行後,看到以下三維網格圖+垂簾的效果。
(05)第五,surf三維着色曲面圖。將第四步中的meshz(a,b,c)改為surf(a,b,c),然後保存運行後,看到以下三維着色曲面圖。
(06)第六,surfc同時畫出三維着色曲面圖與等高線。將第五步的surf(a,b,c)改為surfc(a,b,c),然後保存運行後,看到以下三維着色曲面圖+等高線的效果。
(07)第七,surfl帶光照的三維着色曲面圖圖。將第六步的surfc(a,b,c)改為surfl(a,b,c),然後保存運行後,看到以下帶光照的三維着色曲面圖。
(08)第八,添加shading interp去掉網格曲線,添加xlabel等座標説明,添加title標題説明。如下輸入以下代碼,保存運行後,得到如下效果。[a,b,c]=peaks(50);figure(2)surfl(a,b,c)shading interpxlabel('X');ylabel('Y');zlabel('Z')title('peaks+surfl')axis tight
shading interp去掉網格線在使用mesh命令時不起作用。
介紹了plot3;mesh, meshc, meshz;surf, surfc, surfl 共3類7種繪製三維圖的方式。