第5章MATLAB繪圖00001_第1頁
第5章MATLAB繪圖00001_第2頁
第5章MATLAB繪圖00001_第3頁
第5章MATLAB繪圖00001_第4頁
第5章MATLAB繪圖00001_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第第5章章 matlab繪圖繪圖5.1 二維數(shù)據(jù)曲線圖二維數(shù)據(jù)曲線圖5.2 其他二維圖形其他二維圖形5.3 隱函數(shù)繪圖隱函數(shù)繪圖5.4 三維圖形三維圖形5.5 圖形修飾處理圖形修飾處理5.6 圖像處理與動畫制作圖像處理與動畫制作5.1 二維數(shù)據(jù)曲線圖二維數(shù)據(jù)曲線圖5.1.1 繪制單根二維曲線繪制單根二維曲線plot函數(shù)的基本調用格式為:函數(shù)的基本調用格式為:plot(x,y) 其中其中x和和y為長度相同的向量,分別用于存儲為長度相同的向量,分別用于存儲x坐標和坐標和y坐標數(shù)據(jù)。坐標數(shù)據(jù)。例例5-1 在在0 x2 區(qū)間內,繪制曲線區(qū)間內,繪制曲線 y=2e-0.5xcos(4x)程序如下:程序如

2、下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)例例5-2 繪制曲線。繪制曲線。程序如下:程序如下:t=0:0.1:2*pi;x=t.*sin(3*t);y=t.*sin(t).*sin(t);plot(x,y);plot函數(shù)最簡單的調用格式是只包含一個輸入?yún)?shù):函數(shù)最簡單的調用格式是只包含一個輸入?yún)?shù):plot(x)在這種情況下,當在這種情況下,當x是實向量時,以該向量元素的下是實向量時,以該向量元素的下標為橫坐標,元素值為縱坐標畫出一條連續(xù)曲線,標為橫坐標,元素值為縱坐標畫出一條連續(xù)曲線,這實際上是繪制折線圖。這實際上是繪制折

3、線圖。5.1.2 繪制多根二維曲線繪制多根二維曲線1plot函數(shù)的輸入?yún)?shù)是矩陣形式函數(shù)的輸入?yún)?shù)是矩陣形式 (1) 當當x是向量,是向量,y是有一維與是有一維與x同維的矩陣時,則繪同維的矩陣時,則繪制出多根不同顏色的曲線。曲線條數(shù)等于制出多根不同顏色的曲線。曲線條數(shù)等于y矩陣的矩陣的另一維數(shù),另一維數(shù),x被作為這些曲線共同的橫坐標。被作為這些曲線共同的橫坐標。 (2) 當當x,y是同維矩陣時,則以是同維矩陣時,則以x,y對應列元素為橫、對應列元素為橫、縱坐標分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)??v坐標分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。 (3) 對只包含一個輸入?yún)?shù)的對只包含一個輸入?yún)?shù)的

4、plot函數(shù),當輸入?yún)?shù)函數(shù),當輸入?yún)?shù)是實矩陣時,則按列繪制每列元素值相對其下標是實矩陣時,則按列繪制每列元素值相對其下標的曲線,曲線條數(shù)等于輸入?yún)?shù)矩陣的列數(shù)。的曲線,曲線條數(shù)等于輸入?yún)?shù)矩陣的列數(shù)。當輸入?yún)?shù)是復數(shù)矩陣時,則按列分別以元素實部當輸入?yún)?shù)是復數(shù)矩陣時,則按列分別以元素實部和虛部為橫、縱坐標繪制多條曲線。和虛部為橫、縱坐標繪制多條曲線。2含多個輸入?yún)?shù)的含多個輸入?yún)?shù)的plot函數(shù)函數(shù)調用格式為:調用格式為:plot(x1,y1,x2,y2,xn,yn)(1) 當輸入?yún)?shù)都為向量時,當輸入?yún)?shù)都為向量時,x1和和y1,x2和和y2,xn和和yn分別組成一組向量對,每一組向量對

5、的長分別組成一組向量對,每一組向量對的長度可以不同。每一向量對可以繪制出一條曲線,度可以不同。每一向量對可以繪制出一條曲線,這樣可以在同一坐標內繪制出多條曲線。這樣可以在同一坐標內繪制出多條曲線。 (2) 當輸入?yún)?shù)有矩陣形式時,配對的當輸入?yún)?shù)有矩陣形式時,配對的x,y按對應列按對應列元素為橫、縱坐標分別繪制曲線,曲線條數(shù)等于元素為橫、縱坐標分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。矩陣的列數(shù)。例例5-3 分析下列程序繪制的曲線。分析下列程序繪制的曲線。x1=linspace(0,2*pi,100);x2=linspace(0,3*pi,100);x3=linspace(0,4*pi,100);

6、y1=sin(x1);y2=1+sin(x2);y3=2+sin(x3);x=x1;x2;x3;y=y1;y2;y3;plot(x,y,x1,y1-1)3具有兩個縱坐標標度的圖形具有兩個縱坐標標度的圖形在在matlab中,如果需要繪制出具有不同縱坐標標中,如果需要繪制出具有不同縱坐標標度的兩個圖形,可以使用度的兩個圖形,可以使用plotyy繪圖函數(shù)。調用繪圖函數(shù)。調用格式為:格式為:plotyy(x1,y1,x2,y2)其中其中x1,y1對應一條曲線,對應一條曲線,x2,y2對應另一條曲線。橫對應另一條曲線。橫坐標的標度相同,縱坐標有兩個,左縱坐標用于坐標的標度相同,縱坐標有兩個,左縱坐標用于

7、x1,y1數(shù)據(jù)對,右縱坐標用于數(shù)據(jù)對,右縱坐標用于x2,y2數(shù)據(jù)對。數(shù)據(jù)對。例例5-4 用不同標度在同一坐標內繪制曲線用不同標度在同一坐標內繪制曲線y1=0.2e-0.5xcos(4x) 和和y2=2e-0.5xcos(x)。程序如下:程序如下:x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);y2=2*exp(-0.5*x).*cos(pi*x);plotyy(x,y1,x,y2);4圖形保持圖形保持hold on/off命令控制是保持原有圖形還是刷新原有命令控制是保持原有圖形還是刷新原有圖形,不帶參數(shù)的圖形,不帶參數(shù)的hold命令在兩種狀態(tài)之間

8、進行命令在兩種狀態(tài)之間進行切換。切換。例例5-5 采用圖形保持,在同一坐標內繪制曲線采用圖形保持,在同一坐標內繪制曲線y1=0.2e-0.5xcos(4x) 和和y2=2e-0.5xcos(x)。程序如下:程序如下:x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);plot(x,y1)hold ony2=2*exp(-0.5*x).*cos(pi*x);plot(x,y2);hold off5.1.3 設置曲線樣式設置曲線樣式matlab提供了一些繪圖選項,用于確定所繪曲線提供了一些繪圖選項,用于確定所繪曲線的線型、顏色和數(shù)據(jù)點標記符號,它們可以組

9、合的線型、顏色和數(shù)據(jù)點標記符號,它們可以組合使用。例如,使用。例如,“b-.”表示藍色點劃線,表示藍色點劃線,“y:d”表示表示黃色虛線并用菱形符標記數(shù)據(jù)點。當選項省略時,黃色虛線并用菱形符標記數(shù)據(jù)點。當選項省略時,matlab規(guī)定,線型一律用實線,顏色將根據(jù)曲規(guī)定,線型一律用實線,顏色將根據(jù)曲線的先后順序依次。線的先后順序依次。要設置曲線樣式可以在要設置曲線樣式可以在plot函數(shù)中加繪圖選項,其函數(shù)中加繪圖選項,其調用格式為:調用格式為:plot(x1,y1,選項選項1,x2,y2,選項選項2,xn,yn,選項選項n)例例5-6 在同一坐標內,分別用不同線型和顏色繪制曲在同一坐標內,分別用不

10、同線型和顏色繪制曲線線y1=0.2e-0.5xcos(4x) 和和y2=2e-0.5xcos(x),標記兩,標記兩曲線交叉點。曲線交叉點。程序如下:程序如下:x=linspace(0,2*pi,1000);y1=0.2*exp(-0.5*x).*cos(4*pi*x);y2=2*exp(-0.5*x).*cos(pi*x);k=find(abs(y1-y2)1e-2); %查找查找y1與與y2相等點相等點(近似相等近似相等)的下標的下標x1=x(k); %取取y1與與y2相等點的相等點的x坐標坐標y3=0.2*exp(-0.5*x1).*cos(4*pi*x1); %求求y1與與y2值值相等點

11、的相等點的y坐標坐標plot(x,y1,x,y2,k:,x1,y3,bp);5.1.4 圖形標注與坐標控制圖形標注與坐標控制1圖形標注圖形標注有關圖形標注函數(shù)的調用格式為:有關圖形標注函數(shù)的調用格式為:title(圖形名稱圖形名稱)xlabel(x軸說明軸說明)ylabel(y軸說明軸說明)text(x,y,圖形說明圖形說明)legend(圖例圖例1,圖例圖例2,)函數(shù)中的說明文字,除使用標準的函數(shù)中的說明文字,除使用標準的ascii字符外,字符外,還可使用還可使用latex格式的控制字符,這樣就可以在格式的控制字符,這樣就可以在圖形上添加希臘字母、數(shù)學符號及公式等內容。圖形上添加希臘字母、數(shù)

12、學符號及公式等內容。例如,例如,text(0.3,0.5,sin(omegat+beta)將得到將得到標注效果標注效果sin(t+)。例例5-7 在在0 x2 區(qū)間內,繪制曲線區(qū)間內,繪制曲線y1=2e-0.5x和和y2=cos(4x),并給圖形添加圖形標注。,并給圖形添加圖形標注。程序如下:程序如下:x=0:pi/100:2*pi;y1=2*exp(-0.5*x);y2=cos(4*pi*x);plot(x,y1,x,y2)title(x from 0 to 2pi); %加圖形標題加圖形標題xlabel(variable x); %加加x軸說明軸說明ylabel(variable y);

13、%加加y軸說明軸說明text(0.8,1.5,曲線曲線y1=2e-0.5x); %在指定位置在指定位置添加圖形說明添加圖形說明text(2.5,1.1,曲線曲線y2=cos(4pix); legend(y1, y2) %加圖例加圖例2坐標控制坐標控制axis函數(shù)的調用格式為:函數(shù)的調用格式為:axis(xmin xmax ymin ymax zmin zmax)axis函數(shù)功能豐富,常用的格式還有:函數(shù)功能豐富,常用的格式還有:axis equal:縱、橫坐標軸采用等長刻度。:縱、橫坐標軸采用等長刻度。axis square:產生正方形坐標系:產生正方形坐標系(缺省為矩形缺省為矩形)。axis

14、 auto:使用缺省設置。:使用缺省設置。axis off:取消坐標軸。:取消坐標軸。axis on:顯示坐標軸。:顯示坐標軸。給坐標加網格線用給坐標加網格線用grid命令來控制。命令來控制。grid on/off命令命令控制是畫還是不畫網格線,不帶參數(shù)的控制是畫還是不畫網格線,不帶參數(shù)的grid命令命令在兩種狀態(tài)之間進行切換。在兩種狀態(tài)之間進行切換。給坐標加邊框用給坐標加邊框用box命令來控制。命令來控制。box on/off命令控命令控制是加還是不加邊框線,不帶參數(shù)的制是加還是不加邊框線,不帶參數(shù)的box命令在兩命令在兩種狀態(tài)之間進行切換。種狀態(tài)之間進行切換。例例5-8 在同一坐標中,可以

15、繪制在同一坐標中,可以繪制3個同心圓,并加坐個同心圓,并加坐標控制。標控制。程序如下:程序如下:t=0:0.01:2*pi;x=exp(i*t);y=x;2*x;3*x;plot(y)grid on; %加網格線加網格線box on; %加坐標邊框加坐標邊框axis equal %坐標軸采用等刻度坐標軸采用等刻度5.1.5 圖形的可視化編輯圖形的可視化編輯matlab 6.5版本在圖形窗口中提供了可視化的圖版本在圖形窗口中提供了可視化的圖形編輯工具,利用圖形窗口菜單欄或工具欄中的形編輯工具,利用圖形窗口菜單欄或工具欄中的有關命令可以完成對窗口中各種圖形對象的編輯有關命令可以完成對窗口中各種圖形

16、對象的編輯處理。處理。在圖形窗口上有一個菜單欄和工具欄。菜單欄包含在圖形窗口上有一個菜單欄和工具欄。菜單欄包含file、edit、view、insert、tools、window和和help共共7個菜單項,工具欄包含個菜單項,工具欄包含11個命令按鈕。個命令按鈕。5.1.6 對函數(shù)自適應采樣的繪圖函數(shù)對函數(shù)自適應采樣的繪圖函數(shù)fplot函數(shù)的調用格式為:函數(shù)的調用格式為: fplot(fname,lims,tol,選項選項)其中其中fname為函數(shù)名,以字符串形式出現(xiàn),為函數(shù)名,以字符串形式出現(xiàn),lims為為x,y的取值范圍,的取值范圍,tol為相對允許誤差,其系統(tǒng)默認為相對允許誤差,其系統(tǒng)默

17、認值為值為2e-3。選項定義與。選項定義與plot函數(shù)相同。函數(shù)相同。例例5-9 用用fplot函數(shù)繪制函數(shù)繪制f(x)=cos(tan(x)的曲線。的曲線。命令如下:命令如下:fplot(cos(tan(pi*x), 0,1,1e-4)5.1.7 圖形窗口的分割圖形窗口的分割subplot函數(shù)的調用格式為:函數(shù)的調用格式為:subplot(m,n,p)該函數(shù)將當前圖形窗口分成該函數(shù)將當前圖形窗口分成mn個繪圖區(qū),個繪圖區(qū),即每行即每行n個,共個,共m行,區(qū)號按行優(yōu)先編號,行,區(qū)號按行優(yōu)先編號,且選定第且選定第p個區(qū)為當前活動區(qū)。在每一個繪個區(qū)為當前活動區(qū)。在每一個繪圖區(qū)允許以不同的坐標系單獨

18、繪制圖形。圖區(qū)允許以不同的坐標系單獨繪制圖形。例例5-10 在圖形窗口中,以子圖形式同時繪制在圖形窗口中,以子圖形式同時繪制多根曲線。多根曲線。 5.2 其他二維圖形其他二維圖形5.2.1 其他坐標系下的二維數(shù)據(jù)曲線圖其他坐標系下的二維數(shù)據(jù)曲線圖1對數(shù)坐標圖形對數(shù)坐標圖形matlab提供了繪制對數(shù)和半對數(shù)坐標曲線的函數(shù),提供了繪制對數(shù)和半對數(shù)坐標曲線的函數(shù),調用格式為:調用格式為:semilogx(x1,y1,選項選項1,x2,y2,選項選項2,)semilogy(x1,y1,選項選項1,x2,y2,選項選項2,)loglog(x1,y1,選項選項1,x2,y2,選項選項2,)例例5-11 繪

19、制繪制y=10 x2的對數(shù)坐標圖并與直角線性坐標的對數(shù)坐標圖并與直角線性坐標圖進行比較。圖進行比較。2極坐標圖極坐標圖polar函數(shù)用來繪制極坐標圖,其調用格式為:函數(shù)用來繪制極坐標圖,其調用格式為:polar(theta,rho,選項選項)其中其中theta為極坐標極角,為極坐標極角,rho為極坐標矢徑,選項為極坐標矢徑,選項的內容與的內容與plot函數(shù)相似。函數(shù)相似。例例5-12 繪制繪制r=sin(t)cos(t)的極坐標圖,并標記數(shù)據(jù)的極坐標圖,并標記數(shù)據(jù)點。點。程序如下:程序如下:t=0:pi/50:2*pi;r=sin(t).*cos(t);polar(t,r,-*);5.2.2

20、二維統(tǒng)計分析圖二維統(tǒng)計分析圖在在matlab中,二維統(tǒng)計分析圖形很多,常見的有中,二維統(tǒng)計分析圖形很多,常見的有條形圖、階梯圖、桿圖和填充圖等,所采用的函條形圖、階梯圖、桿圖和填充圖等,所采用的函數(shù)分別是:數(shù)分別是:bar(x,y,選項選項)stairs(x,y,選項選項)stem(x,y,選項選項)fill(x1,y1,選項選項1,x2,y2,選項選項2,)例例5-13 分別以條形圖、階梯圖、桿圖和填充圖形式分別以條形圖、階梯圖、桿圖和填充圖形式繪制曲線繪制曲線y=2sin(x)。程序如下:程序如下:x=0:pi/10:2*pi;y=2*sin(x);subplot(2,2,1);bar(x

21、,y,g);title(bar(x,y,g);axis(0,7,-2,2);subplot(2,2,2);stairs(x,y,b);title(stairs(x,y,b);axis(0,7,-2,2);subplot(2,2,3);stem(x,y,k);title(stem(x,y,k);axis(0,7,-2,2);subplot(2,2,4);fill(x,y,y);title(fill(x,y,y);axis(0,7,-2,2);matlab提供的統(tǒng)計分析繪圖函數(shù)還有很多,例如,提供的統(tǒng)計分析繪圖函數(shù)還有很多,例如,用來表示各元素占總和的百分比的餅圖、復數(shù)的用來表示各元素占總和的百分

22、比的餅圖、復數(shù)的相量圖等等。相量圖等等。例例5-14 繪制圖形:繪制圖形:(1) 某企業(yè)全年各季度的產值某企業(yè)全年各季度的產值(單位:萬元單位:萬元)分別為:分別為:2347,1827,2043,3025,試用餅圖作統(tǒng)計分析。,試用餅圖作統(tǒng)計分析。(2) 繪制復數(shù)的相量圖:繪制復數(shù)的相量圖:7+2.9i、2-3i和和-1.5-6i。程序如下:程序如下:subplot(1,2,1);pie(2347,1827,2043,3025);title(餅圖餅圖);legend(一季度一季度,二季度二季度,三季度三季度,四季度四季度);subplot(1,2,2);compass(7+2.9i,2-3i,

23、-1.5-6i);title(相量圖相量圖);5.3 隱函數(shù)繪圖隱函數(shù)繪圖matlab提供了一個提供了一個ezplot函數(shù)繪制隱函數(shù)圖形,函數(shù)繪制隱函數(shù)圖形,下面介紹其用法。下面介紹其用法。(1) 對于函數(shù)對于函數(shù)f = f(x),ezplot函數(shù)的調用格式為:函數(shù)的調用格式為:ezplot(f):在默認區(qū)間:在默認區(qū)間-2x2繪制繪制f = f(x)的圖形。的圖形。ezplot(f, a,b):在區(qū)間:在區(qū)間axb繪制繪制f = f(x)的圖形。的圖形。(2) 對于隱函數(shù)對于隱函數(shù)f = f(x,y),ezplot函數(shù)的調用格式為:函數(shù)的調用格式為:ezplot(f):在默認區(qū)間:在默認區(qū)間

24、-2x2和和-2y2繪制繪制f(x,y) = 0的圖形。的圖形。ezplot(f, xmin,xmax,ymin,ymax):在區(qū)間:在區(qū)間xminxxmax和和yminyymax繪制繪制f(x,y) = 0的圖的圖形。形。ezplot(f, a,b):在區(qū)間:在區(qū)間axb和和ay b繪制繪制f(x,y) = 0的圖形。的圖形。(3) 對于參數(shù)方程對于參數(shù)方程x = x(t)和和y = y(t),ezplot函數(shù)的調函數(shù)的調用格式為:用格式為:ezplot(x,y):在默認區(qū)間:在默認區(qū)間0t2繪制繪制x=x(t)和和y=y(t)的圖形。的圖形。ezplot(x,y, tmin,tmax):在

25、區(qū)間:在區(qū)間tmin t tmax繪繪制制x=x(t)和和y=y(t)的圖形。的圖形。例例5-15 隱函數(shù)繪圖應用舉例。隱函數(shù)繪圖應用舉例。程序如下:程序如下:subplot(2,2,1);ezplot(x2+y2-9);axis equalsubplot(2,2,2);ezplot(x3+y3-5*x*y+1/5)subplot(2,2,3);ezplot(cos(tan(pi*x), 0,1)subplot(2,2,4);ezplot(8*cos(t),4*sqrt(2)*sin(t),0,2*pi) 5.4 三維圖形三維圖形5.4.1 三維曲線三維曲線plot3函數(shù)與函數(shù)與plot函數(shù)用

26、法十分相似,其調用格式為:函數(shù)用法十分相似,其調用格式為:plot3(x1,y1,z1,選項選項1,x2,y2,z2,選項選項2,xn,yn,zn,選項選項n) 其中每一組其中每一組x,y,z組成一組曲線的坐標參數(shù),選項的組成一組曲線的坐標參數(shù),選項的定義和定義和plot函數(shù)相同。當函數(shù)相同。當x,y,z是同維向量時,則是同維向量時,則x,y,z 對應元素構成一條三維曲線。當對應元素構成一條三維曲線。當x,y,z是同維是同維矩陣時,則以矩陣時,則以x,y,z對應列元素繪制三維曲線,曲對應列元素繪制三維曲線,曲線條數(shù)等于矩陣列數(shù)。線條數(shù)等于矩陣列數(shù)。例例5-16 繪制三維曲線。繪制三維曲線。程序

27、如下:程序如下:t=0:pi/100:20*pi;x=sin(t);y=cos(t);z=t.*sin(t).*cos(t);plot3(x,y,z);title(line in 3-d space);xlabel(x);ylabel(y);zlabel(z);grid on;5.4.2 三維曲面三維曲面1產生三維數(shù)據(jù)產生三維數(shù)據(jù)在在matlab中,利用中,利用meshgrid函數(shù)產生平面區(qū)域內函數(shù)產生平面區(qū)域內的網格坐標矩陣。其格式為:的網格坐標矩陣。其格式為:x=a:d1:b; y=c:d2:d;x,y=meshgrid(x,y);語句執(zhí)行后,矩陣語句執(zhí)行后,矩陣x的每一行都是向量的每一行

28、都是向量x,行數(shù)等于,行數(shù)等于向量向量y的元素的個數(shù),矩陣的元素的個數(shù),矩陣y的每一列都是向量的每一列都是向量y,列數(shù)等于向量列數(shù)等于向量x的元素的個數(shù)。的元素的個數(shù)。2繪制三維曲面的函數(shù)繪制三維曲面的函數(shù)surf函數(shù)和函數(shù)和mesh函數(shù)的調用格式為:函數(shù)的調用格式為:mesh(x,y,z,c)surf(x,y,z,c)一般情況下,一般情況下,x,y,z是維數(shù)相同的矩陣。是維數(shù)相同的矩陣。x,y是網格坐是網格坐標矩陣,標矩陣,z是網格點上的高度矩陣,是網格點上的高度矩陣,c用于指定在用于指定在不同高度下的顏色范圍。不同高度下的顏色范圍。例例5-17 繪制三維曲面圖繪制三維曲面圖z=sin(x+

29、sin(y)-x/10。程序如下:程序如下:x,y=meshgrid(0:0.25:4*pi);z=sin(x+sin(y)-x/10;mesh(x,y,z);axis(0 4*pi 0 4*pi -2.5 1);此外,還有帶等高線的三維網格曲面函數(shù)此外,還有帶等高線的三維網格曲面函數(shù)meshc和和帶底座的三維網格曲面函數(shù)帶底座的三維網格曲面函數(shù)meshz。其用法與。其用法與mesh類似,不同的是類似,不同的是meshc還在還在xy平面上繪制曲平面上繪制曲面在面在z軸方向的等高線,軸方向的等高線,meshz還在還在xy平面上繪制平面上繪制曲面的底座。曲面的底座。例例5-18 在在xy平面內選擇

30、區(qū)域平面內選擇區(qū)域-8,8-8,8,繪制,繪制4種三維曲種三維曲面圖。面圖。程序如下:程序如下:x,y=meshgrid(-8:0.5:8);z=sin(sqrt(x.2+y.2)./sqrt(x.2+y.2+eps);subplot(2,2,1);mesh(x,y,z);title(mesh(x,y,z)subplot(2,2,2);meshc(x,y,z);title(meshc(x,y,z)subplot(2,2,3);meshz(x,y,z)title(meshz(x,y,z)subplot(2,2,4);surf(x,y,z);title(surf(x,y,z)3標準三維曲面標準三維

31、曲面sphere函數(shù)的調用格式為:函數(shù)的調用格式為:x,y,z=sphere(n)cylinder函數(shù)的調用格式為:函數(shù)的調用格式為:x,y,z= cylinder(r,n)matlab還有一個還有一個peaks 函數(shù),稱為多峰函數(shù),常函數(shù),稱為多峰函數(shù),常用于三維曲面的演示。用于三維曲面的演示。例例5-19 繪制標準三維曲面圖形。繪制標準三維曲面圖形。程序如下:程序如下:t=0:pi/20:2*pi;x,y,z= cylinder(2+sin(t),30);subplot(2,2,1);surf(x,y,z);subplot(2,2,2);x,y,z=sphere;surf(x,y,z);s

32、ubplot(2,1,2);x,y,z=peaks(30); surf(x,y,z);5.4.3 其他三維圖形其他三維圖形在介紹二維圖形時,曾提到條形圖、桿圖、餅圖和在介紹二維圖形時,曾提到條形圖、桿圖、餅圖和填充圖等特殊圖形,它們還可以以三維形式出現(xiàn),填充圖等特殊圖形,它們還可以以三維形式出現(xiàn),使用的函數(shù)分別是使用的函數(shù)分別是bar3、stem3、pie3 和和fill3。bar3函數(shù)繪制三維條形圖,常用格式為:函數(shù)繪制三維條形圖,常用格式為:bar3(y)bar3(x,y)stem3函數(shù)繪制離散序列數(shù)據(jù)的三維桿圖,常用格式函數(shù)繪制離散序列數(shù)據(jù)的三維桿圖,常用格式為:為:stem3(z)st

33、em3(x,y,z)pie3函數(shù)繪制三維餅圖,常用格式為:函數(shù)繪制三維餅圖,常用格式為:pie3(x)fill3函數(shù)等效于三維函數(shù)函數(shù)等效于三維函數(shù)fill,可在三維空間內繪制,可在三維空間內繪制出填充過的多邊形,常用格式為:出填充過的多邊形,常用格式為:fill3(x,y,z,c)例例5-20 繪制三維圖形:繪制三維圖形:(1) 繪制魔方陣的三維條形圖。繪制魔方陣的三維條形圖。(2) 以三維桿圖形式繪制曲線以三維桿圖形式繪制曲線y=2sin(x)。(3) 已知已知x=2347,1827,2043,3025,繪制餅圖。,繪制餅圖。(4) 用隨機的頂點坐標值畫出五個黃色三角形。用隨機的頂點坐標值

34、畫出五個黃色三角形。程序如下:程序如下:subplot(2,2,1);bar3(magic(4)subplot(2,2,2);y=2*sin(0:pi/10:2*pi);stem3(y);subplot(2,2,3);pie3(2347,1827,2043,3025);subplot(2,2,4);fill3(rand(3,5),rand(3,5),rand(3,5), y )例例5-21 繪制多峰函數(shù)的瀑布圖和等高線圖。繪制多峰函數(shù)的瀑布圖和等高線圖。程序如下:程序如下:subplot(1,2,1);x,y,z=peaks(30);waterfall(x,y,z)xlabel(x-axis)

35、,ylabel(y-axis),zlabel(z-axis);subplot(1,2,2);contour3(x,y,z,12,k); %其中其中12代表高度的等級代表高度的等級數(shù)數(shù)xlabel(x-axis),ylabel(y-axis),zlabel(z-axis);5.5 圖形修飾處理圖形修飾處理5.5.1 視點處理視點處理matlab提供了設置視點的函數(shù)提供了設置視點的函數(shù)view,其調用格式,其調用格式為:為:view(az,el)其中其中az為方位角,為方位角,el為仰角,它們均以度為單位。為仰角,它們均以度為單位。系統(tǒng)缺省的視點定義為方位角系統(tǒng)缺省的視點定義為方位角-37.5,仰

36、角仰角30。例例5-22 從不同視點觀察三維曲線。從不同視點觀察三維曲線。5.5.2 色彩處理色彩處理1顏色的向量表示顏色的向量表示matlab除用字符表示顏色外,還可以用含有除用字符表示顏色外,還可以用含有3個個元素的向量表示顏色。向量元素在元素的向量表示顏色。向量元素在0,1范圍取值,范圍取值,3個元素分別表示紅、綠、藍個元素分別表示紅、綠、藍3種顏色的相對亮度,種顏色的相對亮度,稱為稱為rgb三元組。三元組。2色圖色圖色圖色圖(color map)是是matlab系統(tǒng)引入的概念。在系統(tǒng)引入的概念。在matlab中,每個圖形窗口只能有一個色圖。色中,每個圖形窗口只能有一個色圖。色圖是圖是m

37、3 的數(shù)值矩陣,它的每一行是的數(shù)值矩陣,它的每一行是rgb三元三元組。色圖矩陣可以人為地生成,也可以調用組。色圖矩陣可以人為地生成,也可以調用matlab提供的函數(shù)來定義色圖矩陣。提供的函數(shù)來定義色圖矩陣。3三維表面圖形的著色三維表面圖形的著色三維表面圖實際上就是在網格圖的每一個網格片上三維表面圖實際上就是在網格圖的每一個網格片上涂上顏色。涂上顏色。surf函數(shù)用缺省的著色方式對網格片函數(shù)用缺省的著色方式對網格片著色。除此之外,還可以用著色。除此之外,還可以用shading命令來改變著命令來改變著色方式。色方式。shading faceted命令將每個網格片用其高度對應的命令將每個網格片用其高

38、度對應的顏色進行著色,但網格線仍保留著,其顏色是黑顏色進行著色,但網格線仍保留著,其顏色是黑色。這是系統(tǒng)的缺省著色方式。色。這是系統(tǒng)的缺省著色方式。shading flat命令將每個網格片用同一個顏色進行著命令將每個網格片用同一個顏色進行著色,且網格線也用相應的顏色,從而使得圖形表色,且網格線也用相應的顏色,從而使得圖形表面顯得更加光滑。面顯得更加光滑。shading interp命令在網格片內采用顏色插值處理,命令在網格片內采用顏色插值處理,得出的表面圖顯得最光滑。得出的表面圖顯得最光滑。例例5-23 3種圖形著色方式的效果展示。種圖形著色方式的效果展示。程序如下:程序如下:x,y,z=sp

39、here(20);colormap(copper);subplot(1,3,1);surf(x,y,z);axis equalsubplot(1,3,2);surf(x,y,z);shading flat;axis equalsubplot(1,3,3);surf(x,y,z);shading interp;axis equal5.5.3 光照處理光照處理matlab提供了燈光設置的函數(shù),其調用格式為:提供了燈光設置的函數(shù),其調用格式為:light(color,選項選項1,style,選項選項2,position,選項選項3)例例5-24 光照處理后的球面。光照處理后的球面。程序如下:程序如下

40、:x,y,z=sphere(20);subplot(1,2,1);surf(x,y,z);axis equal;light(posi,0,1,1);shading interp;hold on;plot3(0,1,1,p);text(0,1,1, light);subplot(1,2,2);surf(x,y,z);axis equal;light(posi,1,0,1);shading interp;hold on;plot3(1,0,1,p);text(1,0,1, light);5.5.4 圖形的裁剪處理圖形的裁剪處理例例5-25 繪制三維曲面圖,并進行插值著色處理,裁繪制三維曲面圖,并進行插值著色處理,裁掉圖中掉圖中x和和y都小于都小于0部分。部分。程序如下:程序如下:x,y=meshgrid(-5:0.1:5);z=cos(x).*cos(y).*exp(-sqrt(x.2+y.2)/4);surf(x,y,z);shad

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論