第3講MATLAB作圖1ppt課件_第1頁
第3講MATLAB作圖1ppt課件_第2頁
第3講MATLAB作圖1ppt課件_第3頁
第3講MATLAB作圖1ppt課件_第4頁
第3講MATLAB作圖1ppt課件_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)學建模及其數(shù)學建模及其基于基于MATLAB的實現(xiàn)的實現(xiàn)數(shù)學建模系列講座MATLAB 作圖二維圖形二維圖形三維圖形三維圖形圖形處理圖形處理實例實例作業(yè)作業(yè) Matlab作圖是通過描點、連線來實現(xiàn)的,故在畫一個曲線圖形之前,必須先取得該圖形上的一系列的點的坐標即橫坐標和縱坐標),然后將該點集的坐標傳給Matlab函數(shù)畫圖. 命令為:PLOT(X,Y,S)PLOT(X,Y)-畫實線畫實線PLOT(X,Y1,S1,X,Y2,S2,X,Yn,Sn) -將多條線畫在一起將多條線畫在一起X,Y是向量,分別表示點集的橫坐標和縱坐標線型y 黃色黃色 . 點點 - 連線連線m 洋紅洋紅 o 圈圈 : 短虛線短虛

2、線c 藍綠色藍綠色 x x-符號符號 -. 長短線長短線 r 紅色紅色 + 加號加號 - 長虛線長虛線1.曲線圖曲線圖例例 在在0,2*pi用紅線畫用紅線畫sin(x),用綠圈畫用綠圈畫cos(x). x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,r,x,z,g0)解解Matlab liti12.符號函數(shù)符號函數(shù)(顯函數(shù)、隱函數(shù)和參數(shù)方程顯函數(shù)、隱函數(shù)和參數(shù)方程)畫圖畫圖(1) ezplotezplot(x(t),y(t),tmin,tmax) 表示在區(qū)間表示在區(qū)間tminttmax繪制參數(shù)方程繪制參數(shù)方程 x=x(t),y=y(t)的函數(shù)圖

3、的函數(shù)圖ezplot(f(x),a,b) 表示在表示在axb繪制顯函數(shù)繪制顯函數(shù)f=f(x)的函數(shù)圖的函數(shù)圖ezplot(f(x,y),xmin,xmax,ymin,ymax) 表示在區(qū)間表示在區(qū)間xminxxmax和和 yminyymax繪制繪制隱函數(shù)隱函數(shù)f(x,y)=0的函數(shù)圖的函數(shù)圖例例 在在0,pi上畫上畫y=cos(x)的圖形的圖形解解 輸入命令輸入命令 ezplot(sin(x),0,pi)Matlab liti25解解 輸入命令輸入命令 ezplot(cos(t)3,sin(t)3,0.2*pi)Matlab liti41例例 在-2,0.5,0,2上畫隱函數(shù)0)sin(xye

4、x的圖解解 輸入命令輸入命令ezplot(exp(x)+sin(x*y),-2,0.5,0,2)Matlab liti40例例 在0,2*pi上畫tx3cos,ty3sin星形圖 (2) fplot注意:1 fun必須是M文件的函數(shù)名或是獨立變量為x的字符串. 2 fplot函數(shù)不能畫參數(shù)方程和隱函數(shù)圖形,但在一個圖上可以畫多個圖形。fplot(fun,lims) 表示繪制字符串表示繪制字符串fun指定的函數(shù)在指定的函數(shù)在lims=xmin,xmax的圖形的圖形.例例 在-1,2上畫)3sin(22xeyx的 圖形解解 先建先建M文件文件myfun1.m: function Y=myfun1(

5、x) Y=exp(2*x)+sin(3*x.2)再輸入命令:fplot(myfun1,-1,2)Matlab liti43例例 x、y 的取值范圍都在-2,2, 畫函數(shù) tanh(x),sin(x),cos(x)的圖形 Matlab liti28解解 輸入命令輸入命令: fplot(tanh(x),sin(x),cos(x),2*pi*-1 1 1 1)例例 在在-2,2范圍內繪制函數(shù)范圍內繪制函數(shù)tanh的圖形的圖形解解 fplot(tanh,-2,2)Matlab liti423. 對數(shù)坐標圖對數(shù)坐標圖 在很多工程問題中,通過對數(shù)據(jù)進行對數(shù)轉換可以更清晰地看出數(shù)據(jù)的某些特征,在對數(shù)坐標系中

6、描繪數(shù)據(jù)點的曲線,可以直接地表現(xiàn)對數(shù)轉換.對數(shù)轉換有雙對數(shù)坐標轉換和單軸對數(shù)坐標轉換兩種.用loglog函數(shù)可以實現(xiàn)雙對數(shù)坐標轉換,用semilogx和semilogy函數(shù)可以實現(xiàn)單軸對數(shù)坐標轉換.loglog(Y) 表示表示 x、y坐標都是對數(shù)坐標系坐標都是對數(shù)坐標系semilogx(Y) 表示表示 x坐標軸是對數(shù)坐標系坐標軸是對數(shù)坐標系semilogy() 表示表示y坐標軸是對數(shù)坐標系坐標軸是對數(shù)坐標系plotyy 有兩個有兩個y坐標軸,一個在左邊,一個在右邊坐標軸,一個在左邊,一個在右邊例例 用方形標記創(chuàng)建一個簡單的用方形標記創(chuàng)建一個簡單的loglog解解 輸入命令輸入命令: x=log

7、space(-1,2); loglog(x,exp(x),-s) grid on %標注格柵標注格柵Matlab liti37例例 創(chuàng)建一個簡單的半對數(shù)坐標圖創(chuàng)建一個簡單的半對數(shù)坐標圖解解 輸入命令輸入命令: x=0:.1:10; semilogy(x,10.x)Matlab liti38例例 繪制繪制y=x3的函數(shù)圖、對數(shù)坐標圖、半對數(shù)坐標圖的函數(shù)圖、對數(shù)坐標圖、半對數(shù)坐標圖Matlab liti22三維圖形三維圖形1、空間曲線、空間曲線2、空間曲面、空間曲面PLOT3(x,y,z,s) 空 間 曲 線 1、 一條曲線一條曲線 例例 在區(qū)間在區(qū)間0,10*pi畫出參數(shù)曲線畫出參數(shù)曲線x=si

8、n(t),y=cos(t), z=t. Matlab liti8 解解 t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) rotate3d %旋轉旋轉n維向量,分別表示曲線上點集的橫坐標、縱坐標、函數(shù)值指定顏色、線形等 PLOT3(x,y,z)2、多條曲線、多條曲線例 畫多條曲線觀察函數(shù)Z=(X+Y).2. (這里meshgrid(x,y)的作用是產(chǎn)生一個以向量x為行、向量y為列的矩陣)Matlab liti9其中x,y,z是都是m*n矩陣,其對應的每一列表示一條曲線.解 x=-3:0.1:3;y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+

9、Y).2; plot3(X,Y,Z)空空 間間 曲曲 面面例 畫函數(shù)Z=(X+Y).2的圖形. 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; surf(X,Y,Z) shading flat %將當前圖形變得平滑Matlab liti11(1) surf(x,y,z)畫出數(shù)據(jù)點x,y,z表示的曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值(2) Mesh(x,y,z) 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; mesh(X,Y,Z) Matlab liti2

10、4例 畫出曲面Z=(X+Y).2在不同視角的網(wǎng)格圖. 畫網(wǎng)格曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值(3)meshz(X,Y,Z) 在網(wǎng)格周圍畫一個在網(wǎng)格周圍畫一個curtain圖圖(如如,參考平面參考平面)解 輸入命令: X,Y=meshgrid(-3:.125:3); Z=praks(X,Y); Meshz(X,Y,Z)例例 繪繪peaks的網(wǎng)格圖的網(wǎng)格圖Matlab liti36在圖形上加格柵、圖例和標注在圖形上加格柵、圖例和標注定制坐標定制坐標圖形保持圖形保持分割窗口分割窗口縮放圖形縮放圖形改變視角改變視角圖形處理動動 畫畫1、在圖形上加格柵、圖例和標注、在圖形上加格柵、圖

11、例和標注(1GRID ON: 加格柵在當前圖上加格柵在當前圖上 GRID OFF: 刪除格柵刪除格柵處理圖形處理圖形(2hh = xlabel(string): 在當前圖形的在當前圖形的x軸上加圖例軸上加圖例stringhh = ylabel(string): 在當前圖形的在當前圖形的y軸上加圖例軸上加圖例stringhh = title(string): 在當前圖形的頂端上加圖例在當前圖形的頂端上加圖例stringhh = zlabel(string): 在當前圖形的在當前圖形的z軸上加圖例軸上加圖例string例例 在區(qū)間在區(qū)間0,2*pi畫畫sin(x)的圖形,并加注圖例的圖形,并加注圖

12、例“自變量自變量 X”、“函數(shù)函數(shù)Y”、“示意圖示意圖”, 并加格柵并加格柵.解解 x=linspace(0,2*pi,30); y=sin(x); plot(x,y) xlabel(自變量自變量X) ylabel(函數(shù)函數(shù)Y) title(示意圖示意圖) grid onMatlab liti2 (3) hh = gtext(string) 命令gtext(string)用鼠標放置標注在現(xiàn)有的圖上.運行命令gtext(string)時,屏幕上出現(xiàn)當前圖形,在圖形上出現(xiàn)一個交叉的十字,該十字隨鼠標的移動移動,當按下鼠標左鍵時,該標注string放在當前十交叉的位置. 例例 在區(qū)間在區(qū)間0,2*p

13、i畫畫sin(x),并分別標注,并分別標注“sin(x)” ”cos(x)”.解解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x); plot(x,y,x,z) gtext(sin(x);gtext(cos(x)Matlab liti32、定制坐標、定制坐標Axis(xmin xmax ymin ymax zmin zmax)例例 在區(qū)間在區(qū)間0.005,0.01顯示顯示sin(1/x)的圖形。的圖形。解解 x=linspace(0.0001,0.01,1000); y=sin(1./x); plot(x,y) axis(0.005 0.01 1 1)Mat

14、lab liti4定制圖形坐標將坐標軸返回到自動缺省值Axis autox、y、z的最大、最小值3、圖形保持、圖形保持(1) hold on hold of例例 將將y=sin(x)、y=cos(x)分別用點和線畫出在同一屏幕上。分別用點和線畫出在同一屏幕上。解解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x) plot(x,z,:) hold on Plot(x,y)Matlab liti5保持當前圖形, 以便繼續(xù)畫圖到當前圖上釋放當前圖形窗口(2) figure(h)例例 區(qū)間區(qū)間0,2*pi新建兩個窗口分別畫出新建兩個窗口分別畫出y=sin(x); z

15、=cos(x)。解解 x=linspace(0,2*pi,100); y=sin(x);z=cos(x); plot(x,y); title(sin(x); pause figure(2); plot(x,z); title(cos(x);Matlab liti6新建h窗口,激活圖形使其可見,并把它置于其它圖形之上4、分割窗口、分割窗口h=subplot(mrows,ncols,thisplot) 劃分整個作圖區(qū)域為mrows*ncols塊逐行對塊訪問并激活第thisplot塊,其后的作圖語句將圖形畫在該塊上。 激活已劃分為mrows*ncols塊的屏幕中的第thisplot塊,其后的作圖語句

16、將圖形畫在該塊上。命令Subplot(1,1,1)返回非分割狀態(tài)。subplot(mrows,ncols,thisplot) subplot(1,1,1) 解解x=linspace(0,2*pi,100); y=sin(x); z=cos(x); a=sin(x).*cos(x);b=sin(x)./(cos(x)+eps) subplot(2,2,1);plot(x,y),title(sin(x) subplot(2,2,2);plot(x,z),title(cos(x) subplot(2,2,3);plot(x,a),title(sin(x)cos(x) subplot(2,2,4);p

17、lot(x,b),title(sin(x)/cos(x)例例 將屏幕分割為四塊,并分別畫出將屏幕分割為四塊,并分別畫出y=sin(x),z=cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。Matlab liti75、縮放圖形、縮放圖形zoom on 單擊鼠標左鍵,則在當前圖形窗口中,以鼠標點中的點為中心的圖形放大2倍;單擊鼠標右鍵,則縮小2倍解解 x=linspace(0,2*pi,30); y=sin(x); Plot(x,y) zoom on Matlab liti13例例 縮放縮放y=sin(x)的圖形的圖形zoom off為當前圖形打開縮放模式關閉縮放模式

18、6. 改變視角改變視角view (1view(a,b) 命令view(a,b)改變視角到(a,b),a是方位角,b為仰角。缺省視角為(-37.5,30)。 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; subplot(2,2,1), mesh(X,Y,Z) subplot(2,2,2), mesh(X,Y,Z),view(50,-34) subplot(2,2,3), mesh(X,Y,Z),view(-60,70) subplot(2,2,4), mesh(X,Y,Z),view(0,1,1)Matlab liti10例 畫出曲

19、面Z=(X+Y).2在不同視角的網(wǎng)格圖. view用空間矢量表示的,三個量只關心它們的比例,與數(shù)值的大小無關,x軸view(1,0,0),y軸view(0,1,0),z軸view(0,0,1)。(2view(x,y,z)7. 動畫動畫 Moviein(),getframe,movie() 函數(shù)Moviein()產(chǎn)生一個幀矩陣來存放動畫中的幀;函數(shù)getframe對當前的圖象進行快照;函數(shù)movie()按順序回放各幀。Matlab liti14 例 將曲面peaks做成動畫。 解 x,y,z=peaks(30); surf(x,y,z) axis(-3 3 -3 3 -10 10) m=movi

20、ein(15); for i=1:15 view(-37.5+24*(i-1),30) m(:,i)=getframe; end movie(m)特殊二、三維圖形特殊二、三維圖形1、特殊的二維圖形函數(shù)、特殊的二維圖形函數(shù)2、特殊的三維圖形函數(shù)、特殊的三維圖形函數(shù)特殊的二維圖形函數(shù)特殊的二維圖形函數(shù)1、極坐標圖:、極坐標圖:polar (theta,rho,s) 用角度theta弧度表示和極半徑rho作極坐標圖,用s指定線型。例的極坐標圖形。2cos2sinr解:theta=linspace(0,2*pi), rho=sin(2*theta).*cos(2*theta); polar(theta

21、,rho,g) title(Polar plot of sin(2*theta).*cos(2*theta);Matlab liti15 2、 散點圖散點圖: scatterX,Y,S,C) 在向量在向量X和和Y的指定位置顯示彩色圈的指定位置顯示彩色圈X和和Y必須大小相同必須大小相同解解 輸入命令:輸入命令: load seamount scatter(x,y,5,z)Matlab liti29 3、平面等值線圖:、平面等值線圖: contour (x,y,z,n) 繪制繪制n個等值線的二維等值線圖個等值線的二維等值線圖解解 輸入命令:輸入命令: X,Y=meshgeid(-2:.2:2,-2:.2:3); Z=X.*exp(-X.2-Y.2); C,h=contour(X,Y,Z); clabel(C,h) colormap coolMatlab liti34 例例 繪制繪制seamount散點圖散點圖例例

溫馨提示

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

評論

0/150

提交評論