第三講matlab作圖_第1頁
已閱讀1頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn),MATLAB作圖,Matlab作圖,二維圖形,三維圖形,圖形處理,實(shí)例,作業(yè),特殊二、三維圖形,,Matlab作圖是通過描點(diǎn)、連線來實(shí)現(xiàn)的,故在畫一個(gè)曲線圖形之前,必須先取得該圖形上的一系列的點(diǎn)的坐標(biāo)(即橫坐標(biāo)和縱坐標(biāo)),然后將該點(diǎn)集的坐標(biāo)傳給Matlab函數(shù)畫圖.,命令為:PLOT(X,Y,S),PLOT(X,Y)--畫實(shí)線PLOT(X,Y1,S1,X,Y2,S2,……,X,Yn,Sn)

2、--將多條線畫在一起,X,Y是向量,分別表示點(diǎn)集的橫坐標(biāo)和縱坐標(biāo),,,,,線型,y 黃色 . 點(diǎn) - 連線m 洋紅 o 圈 : 短虛線c 藍(lán)綠色 x x-符號 -. 長短線 r 紅色 + 加號 -- 長虛線,1.曲線圖,例 在[0,2*pi]用紅線畫sin(x),用綠圈畫cos(x).,x=linspace(0,2*pi,30);y=sin(

3、x);z=cos(x);plot(x,y,'r',x,z,’g0'),解,Matlab liti1,2.符號函數(shù)(顯函數(shù)、隱函數(shù)和參數(shù)方程)畫圖,(1) ezplot,ezplot(‘x(t)’,’y(t)’,[tmin,tmax]) 表示在區(qū)間tmin<t<tmax繪制參數(shù)方程

4、 x=x(t),y=y(t)的函數(shù)圖,ezplot(‘f(x)’,[a,b]) 表示在a<x<b繪制顯函數(shù)f=f(x)的函數(shù)圖,ezplot(‘f(x,y)’,[xmin,xmax,ymin,ymax]) 表示在區(qū)間xmin<x<xmax和 ymin<y<ymax繪制隱函數(shù)f(x,y)=0的函數(shù)圖,例 在[0,pi]上畫y=cos(x)的圖形,解

5、輸入命令 ezplot(‘sin(x)’,[0,pi]),Matlab liti25,解 輸入命令 ezplot(‘cos(t)^3’,’sin(t)^3’,[0.2*pi]),Matlab liti41,解 輸入命令ezplot('exp(x)+sin(x*y)',[-2,0.5,0,2]),Matlab liti40,,(2) fplot,注意:[1] fun必須是M文件

6、的函數(shù)名或是獨(dú)立變量為x的字符串. [2] fplot函數(shù)不能畫參數(shù)方程和隱函數(shù)圖形,但在一個(gè)圖上可以畫多個(gè)圖形。,fplot(‘fun’,lims) 表示繪制字符串fun指定的函數(shù)在lims=[xmin,xmax]的圖形.,解 先建M文件myfun1.m: function Y=myfun1(x) Y=exp(2*x)+sin(3*x.^2),再輸入命令:fplot(‘myfun1’,[-1,2]),M

7、atlab liti43,Matlab liti28,解 輸入命令: fplot(‘[tanh(x),sin(x),cos(x)]’,2*pi*[-1 1 –1 1]),例 在[-2,2]范圍內(nèi)繪制函數(shù)tanh的圖形解 fplot(‘tanh’,[-2,2]),Matlab liti42,3. 對數(shù)坐標(biāo)圖,在很多工程問題中,通過對數(shù)據(jù)進(jìn)行對數(shù)轉(zhuǎn)換可以更清晰地看出數(shù)據(jù)的某些特征,在對數(shù)坐標(biāo)系中描繪數(shù)據(jù)點(diǎn)

8、的曲線,可以直接地表現(xiàn)對數(shù)轉(zhuǎn)換.對數(shù)轉(zhuǎn)換有雙對數(shù)坐標(biāo)轉(zhuǎn)換和單軸對數(shù)坐標(biāo)轉(zhuǎn)換兩種.用loglog函數(shù)可以實(shí)現(xiàn)雙對數(shù)坐標(biāo)轉(zhuǎn)換,用semilogx和semilogy函數(shù)可以實(shí)現(xiàn)單軸對數(shù)坐標(biāo)轉(zhuǎn)換.,loglog(Y) 表示 x、y坐標(biāo)都是對數(shù)坐標(biāo)系semilogx(Y) 表示 x坐標(biāo)軸是對數(shù)坐標(biāo)系semilogy(…) 表示y坐標(biāo)軸是對數(shù)坐標(biāo)系plotyy 有兩個(gè)y坐標(biāo)軸,一個(gè)在左邊,一個(gè)在右邊

9、,例 用方形標(biāo)記創(chuàng)建一個(gè)簡單的loglog,解 輸入命令: x=logspace(-1,2); loglog(x,exp(x),’-s’) grid on %標(biāo)注格柵,Matlab liti37,例 創(chuàng)建一個(gè)簡單的半對數(shù)坐標(biāo)圖解 輸入命令: x=0:.1:10; semilogy(x,10.^x),Matlab liti38,例 繪制y=x3

10、的函數(shù)圖、對數(shù)坐標(biāo)圖、半對數(shù)坐標(biāo)圖,Matlab liti22,返回,三維圖形,1、空間曲線,2、空間曲面,返回,PLOT3(x,y,z,s),空 間 曲 線,1、 一條曲線,例 在區(qū)間[0,10*pi]畫出參數(shù)曲線x=sin(t),y=cos(t), z=t.,Matlab liti8,解 t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) rotat

11、e3d %旋轉(zhuǎn),PLOT3(x,y,z),2、多條曲線,例 畫多條曲線觀察函數(shù)Z=(X+Y).^2.,(這里meshgrid(x,y)的作用是產(chǎn)生一個(gè)以向量x為行、向量y為列的矩陣),Matlab liti9,其中x,y,z是都是m*n矩陣,其對應(yīng)的每一列表示一條曲線.,解 x=-3:0.1:3;y=1:0.1:5; [X,Y]=meshgrid(x,y); Z=(X+Y).^2; plot3(X,Y,Z),返回,空

12、間 曲 面,例 畫函數(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 %將當(dāng)前圖形變得平滑,,Matlab liti11,(1) surf(x,y,z),畫出數(shù)據(jù)點(diǎn)(x,y,z)表示的曲面,(2) Mesh(x,y,z),解 x

13、=-3:0.1:3; y=1:0.1:5; [X,Y]=meshgrid(x,y); Z=(X+Y).^2; mesh(X,Y,Z),Matlab liti24,例 畫出曲面Z=(X+Y).^2在不同視角的網(wǎng)格圖.,畫網(wǎng)格曲面,(3)meshz(X,Y,Z) 在網(wǎng)格周圍畫一個(gè)curtain圖(如,參考平面),解 輸入命令: [X,Y]=meshgrid(-3:.125:3); Z=pra

14、ks(X,Y); Meshz(X,Y,Z),例 繪peaks的網(wǎng)格圖,Matlab liti36,返回,在圖形上加格柵、圖例和標(biāo)注,定制坐標(biāo),圖形保持,分割窗口,,,,,縮放圖形,,,改變視角,圖形處理,,,返回,動(dòng) 畫,,1、在圖形上加格柵、圖例和標(biāo)注,(1)GRID ON: 加格柵在當(dāng)前圖上 GRID OFF: 刪除格柵,處理圖形,(2)hh = xlabel(string): 在當(dāng)前圖形的x軸

15、上加圖例string,hh = ylabel(string): 在當(dāng)前圖形的y軸上加圖例string,hh = title(string): 在當(dāng)前圖形的頂端上加圖例string,hh = zlabel(string): 在當(dāng)前圖形的z軸上加圖例string,例 在區(qū)間[0,2*pi]畫sin(x)的圖形,并加注圖例“自變量 X”、“函數(shù)Y”、“示意圖”, 并加格柵.,解 x=linspace(0,2*pi,30); y=s

16、in(x); plot(x,y) xlabel('自變量X') ylabel('函數(shù)Y') title('示意圖') grid on,Matlab liti2,(3) hh = gtext(‘string’),命令gtext(‘string’)用鼠標(biāo)放置標(biāo)注在現(xiàn)有的圖上.運(yùn)行命令gtext(‘string’)時(shí),屏幕上出現(xiàn)當(dāng)前圖形,在圖形上出現(xiàn)一個(gè)交叉的十字,該十字隨鼠標(biāo)

17、的移動(dòng)移動(dòng),當(dāng)按下鼠標(biāo)左鍵時(shí),該標(biāo)注string放在當(dāng)前十交叉的位置.,例 在區(qū)間[0,2*pi]畫sin(x),并分別標(biāo)注“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 liti3,返回,2、定制坐標(biāo),Axis([xmin xm

18、ax ymin ymax zmin zmax]),例 在區(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]),Matlab liti4,返回,定制圖形坐標(biāo),將坐標(biāo)軸返回到自動(dòng)缺省值,Axis auto,3、圖形保持,(1) hold on hold

19、 of,例 將y=sin(x)、y=cos(x)分別用點(diǎn)和線畫出在同一屏幕上。,解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x) plot(x,z,:) hold on Plot(x,y),Matlab liti5,保持當(dāng)前圖形, 以便繼續(xù)畫圖到當(dāng)前圖上,釋放當(dāng)前圖形窗口,(2) figure(h),例 區(qū)間[0,2*pi]新建兩個(gè)窗口分別畫出y=sin(x); z=c

20、os(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、分割窗口

21、,h=subplot(mrows,ncols,thisplot),劃分整個(gè)作圖區(qū)域?yàn)閙rows*ncols塊(逐行對塊訪問)并激活第thisplot塊,其后的作圖語句將圖形畫在該塊上。,激活已劃分為mrows*ncols塊的屏幕中的第thisplot塊,其后的作圖語句將圖形畫在該塊上。,命令Subplot(1,1,1)返回非分割狀態(tài)。,subplot(mrows,ncols,thisplot),subplot(1,1,1),解x=lin

22、space(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)’) sub

23、plot(2,2,4);plot(x,b),title(‘sin(x)/cos(x)’),例 將屏幕分割為四塊,并分別畫出y=sin(x),z=cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。,Matlab liti7,返回,5、縮放圖形,zoom on,單擊鼠標(biāo)左鍵,則在當(dāng)前圖形窗口中,以鼠標(biāo)點(diǎn)中的點(diǎn)為中心的圖形放大2倍;單擊鼠標(biāo)右鍵,則縮小2倍,解 x=linspace(0,2*pi,30);

24、y=sin(x); Plot(x,y) zoom on,Matlab liti13,例 縮放y=sin(x)的圖形,zoom off,為當(dāng)前圖形打開縮放模式,關(guān)閉縮放模式,返回,6. 改變視角view,(1)view(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,

25、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,例 畫出曲面Z=(X+

26、Y).^2在不同視角的網(wǎng)格圖.,view用空間矢量表示的,三個(gè)量只關(guān)心它們的比例,與數(shù)值的大小無關(guān),x軸view([1,0,0]),y軸view([0,1,0]),z軸view([0,0,1])。,(2)view([x,y,z]),返回,7. 動(dòng)畫,Moviein(),getframe,movie() 函數(shù)Moviein()產(chǎn)生一個(gè)幀矩陣來存放動(dòng)畫中的幀;函數(shù)getframe對當(dāng)前的圖象進(jìn)行快照;函數(shù)movie()按順序回放各幀。

27、,Matlab liti14,返回,例 將曲面peaks做成動(dòng)畫。,解 [x,y,z]=peaks(30); surf(x,y,z) axis([-3 3 -3 3 -10 10]) m=moviein(15); for i=1:15 view(-37.5+24*(i-1),30) m(:,i)=getframe; end movie(m),特殊二、三維圖形

28、,1、特殊的二維圖形函數(shù),2、特殊的三維圖形函數(shù),返回,特殊的二維圖形函數(shù),1、極坐標(biāo)圖:polar (theta,rho,s),用角度theta(弧度表示)和極半徑rho作極坐標(biāo)圖,用s指定線型。,例,解:theta=linspace(0,2*pi), rho=sin(2*theta).*cos(2*theta); polar(theta,rho,’g’

29、) title(‘Polar plot of sin(2*theta).*cos(2*theta)’);,Matlab liti15,2、 散點(diǎn)圖: scatter(X,Y,S,C) 在向量X和Y的指定位置顯示彩色圈.X和Y必須大小相同.,解 輸入命令: load seamount scatter(x,y,5,z),Matlab liti29,3、平面等值線圖: contour (x

30、,y,z,n) 繪制n個(gè)等值線的二維等值線圖,解 輸入命令: [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 cool,Matlab liti34,例 繪制seamount散點(diǎn)圖,返回,特殊的三維圖形函數(shù),1、空間等值線圖: contour 3

31、(x,y,z,n),其中n表示等值線數(shù)。,例 山峰的三維和二維等值線圖。,解 [x,y,z]=peaks; subplot(1,2,1) contour3(x,y,z,16,'s') grid, xlabel('x-axis'),ylabel('y-axis') zlabel('z-axis&#

32、39;) title('contour3 of peaks'); subplot(1,2,2) contour(x,y,z,16,'s') grid, xlabel('x-axis'), ylabel('y-axis') title('contour of peaks');,

33、Matlab liti18,3、三維散點(diǎn)圖 scatter3(X,Y,Z,S,C) 在向量X,Y和Z指定的位置上顯示彩色圓圈. 向量X,Y和Z的大小必須相同.,解 輸入命令:[x,y,z]=sphere(16);X=[x(:)*.5 x(:)*.75 x(:)];Y=[y(:)*.5 y(:)*.75 y(:)];Z=[z(:)*.5 z(:)*.75 z(:)];S=repmat([1 .75 .5]*10,pro

34、d(size(x)),1);C=repmat([1 2 3],prod(size(x)),1);scatter3(X(:),Y(:),Z(:),S(:),C(:),'filled'),view(-60,60),例 繪制三維散點(diǎn)圖。,Matlab liti32,返回,繪制山區(qū)地貌圖,要在某山區(qū)方圓大約27平方公里范圍內(nèi)修建一條公路,從山腳出發(fā)經(jīng)過一個(gè)居民區(qū),再到達(dá)一個(gè)礦區(qū)。橫向縱向分別每隔400米測量一次,得到一些

35、地點(diǎn)的高程:(平面區(qū)域0<=x<=5600,0<=y<=4800),需作出該山區(qū)的地貌圖和等高線圖。,Matlab shanqu,返回,返回,實(shí)驗(yàn)作業(yè),1、在同一平面中的兩個(gè)窗口分別畫出心形線和馬鞍面。,要求:,1、在圖形上加格柵、圖例和標(biāo)注,2、定制坐標(biāo),3、以不同角度觀察馬鞍面,2、以不同的視角觀察球面 和 圓柱面

溫馨提示

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

評論

0/150

提交評論