MATLAB中mesh和surf的區別


在MATLAB中mesh和surf都可以用來做三維空間的圖,但是兩個圖具體的差別是什么呢?

 

[X,Y,Z] = peaks(25);
figure(1);
surf(X,Y,Z);
figure(2);
mesh(X,Y,Z);

figure(1):

 

figure(2):

 

 

總結:mesh和surf命令都可以繪出空間內的完整曲面,使用方法也類似,不同的是

     surf命令繪制得到的是着色的三維曲面(黑色線,彩色面);

     mesh命令繪制的圖形是一個一排排的彩色曲線組成的網格圖(彩色線,白色面)。

詳細使用方法見MATLAB幫助文檔。

 

此外,這也 會導致另一種可見的情況,當數據構成的線“太密了”,這時候會導致surf畫出的圖像是全黑的,而mesh畫出的圖像是彩色的。如下:

x=-2:0.01:4;y=x;
[X,Y]=meshgrid(x,y);
Z=X.^2+Y.^2;
ii=find(Z>4);
Z(ii)=NaN;
figure(3);
surf(X,Y,Z); 
figure(4);
mesh(X,Y,Z); 

 figure(3)

 

 

figure(4)

 

 

所以,在實際情況中選擇適合自己的函數來實現繪圖。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM