




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
數(shù)學實驗實驗二曲線曲面的可視化實驗目的
通過繪制一些特殊函數(shù)的圖形,更加深入地理解相關函數(shù)的性質,了解函數(shù)的性質;
繪制部分參數(shù)函數(shù)的曲線,了解函數(shù)表達式中參數(shù)的幾何意義。在MATLAB中,常用的繪圖函數(shù)如下:序號功能MATLAB命令1繪制符號函數(shù)fun在區(qū)間lims=[xmin,xmax]間的圖像。fplot(fun,lims)2繪制由向量x和向量y給定的離散數(shù)據(jù)連接起來的圖像,s用來定義函數(shù)曲線的顏色和線型。plot(x,y,s)相關命令解先建M文件myfun1.m:
function
y=myfun1(x)
y=exp(2*x)+sin(3*x.^2)再輸入命令:fplot(‘myfun1’,[-1,2])MATLAB例在[-2,2]范圍內畫函數(shù)tanh(x)的圖形.解fplot(‘tanh(x)’,[-2,2])MATLABMATLABfplot示例例
x、y的取值范圍都在[-2,2],畫函數(shù)tanh(x),sin(x),cos(x)的圖形.解輸入命令:fplot('[tanh(x),sin(x),cos(x)]',2*pi*[-11])例在[-1,2]上畫的圖形.bblue.point<triangle(left)ggreenocircle>triangle(right)rredxx-markppentagramccyan+plushhexagrammmagenta*star-solidyyellowssquare:dottedkblackddiamond-.dashdotvtriangle(down)--dashed^triangle(up)(none)nolineplot中參數(shù)s的含義x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,'r',x,z,'go')解MATLABplot示例例
在[0,2π]用紅線畫sinx,用綠圈畫cosx.3用來繪制符號函數(shù)圖像的簡易方法,變量的變化范圍lims可以省略,表示-2*pi<x<2*pi,如fun為二元函數(shù)f(x,y),則繪制隱函數(shù)f(x,y)=0的圖像。ezplot(fun,lims)4繪制三維空間的線點。plot3(X,Y,Z,s)5繪制著色的三維網(wǎng)紋曲面,顏色由C決定。mesh(Z)mesh(X,Y,Z,C)相關命令例在[0,
]上畫y=cos
x
的圖形.解輸入命令
ezplot(‘sin(x)’,[0,pi])解輸入命令
ezplot(‘cos(t)^3’,’sin(t)^3’,[0,2*pi])解輸入命令ezplot('exp(x)+sin(x*y)',[-2,0.5,0,2])MATLABMATLABMATLABezplot示例例在區(qū)間[0,10π]畫出參數(shù)曲線x=sint,y=cost,z=t.解t=0:pi/50:10*pi;plot3(sin(t),cos(t),t)rotate3d%旋轉例畫多條曲線觀察函數(shù)Z=(X+Y)2.解x=-3:0.1:3;y=1:0.1:5;[X,Y]=meshgrid(x,y);Z=(X+Y).^2;plot3(X,Y,Z)MATLABplot3示例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)例
畫出曲面Z=(X+Y)2在不同視角的網(wǎng)格圖.畫網(wǎng)格曲面數(shù)據(jù)矩陣.分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值MATLABmesh示例
6畫出數(shù)據(jù)點(x,y,z)表示的曲面。surf(x,y,z)73-D網(wǎng)格圖的簡單繪制方法,f是一個符號函數(shù)。ezmesh(f)8繪制基于用向量R表示的曲線繞x軸旋轉的旋轉曲面。與surf配合使用。cylinder(R,N)相關命令例畫函數(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)shadingflat%將當前圖形變得平滑surf(x,y,z)畫出數(shù)據(jù)點(x,y,z)表示的曲面數(shù)據(jù)矩陣.分別表示數(shù)據(jù)點的橫坐標、縱坐標、函數(shù)值surf示例MATLAB例畫函數(shù)z=(x+y)2的圖形.ezmesh('(x+y)^2',[-4,4,-3,3])ezmesh示例例畫下面函數(shù)的圖形.f=['3*(1-x)^2*exp(-(x^2)-(y+1)^2)'...'-10*(x/5-x^3-y^5)*exp(-x^2-y^2)'...'-1/3*exp(-(x+1)^2-y^2)'];ezmesh(f,[-pi,pi])MATLABMATLAB例繪制高度為10的圓柱面x2+y2=4.解r=[2,2];n=200;[xb,yb,zb]=cylinder(r,n)mesh(xb,yb,10*zb)cylinder示例例繪制底面圓為x2+y2=4,高度為10的圓錐面解r=[2,0];n=200;[xb,yb,zb]=cylinder(r,n)mesh(xb,yb,10*zb)MATLABMATLABcylinder函數(shù)的調用格式為:
[x,y,z]=cylinder(R,n)R為一向量,存放柱面各層次上的半徑;n表示圓周上的點數(shù)例:正弦型柱面t=0:pi/100:4*pi;R=sin(t);cylinder(R,30)cylinder示例在圖形上加格柵、圖例和標注定制坐標圖形保持分割窗口縮放圖形改變視角圖形處理動畫圖形處理(1)GRIDON:加格柵在當前圖上
GRIDOFF:刪除格柵(2)hh=xlabel(string):
在當前圖形的x軸上加圖例stringhh=ylabel(string):
在當前圖形的y軸上加圖例stringhh=title(string):
在當前圖形的頂端上加圖例stringhh=zlabel(string):
在當前圖形的z軸上加圖例string1、在圖形上加格柵、圖例和標注例在區(qū)間[0,2*pi]畫sin(x)的圖形,并加注圖例“自變量X”、“函數(shù)Y”、“示意圖”,并加格柵.解
x=linspace(0,2*pi,30);y=sin(x);plot(x,y)xlabel('自變量X')ylabel('函數(shù)Y')title('示意圖')gridonMATLAB(3)hh=gtext(‘string’)命令gtext(‘string’)用鼠標放置標注在現(xiàn)有的圖上.運行命令gtext(‘string’)時,屏幕上出現(xiàn)當前圖形,在圖形上出現(xiàn)一個交叉的十字,該十字隨鼠標的移動移動,當按下鼠標左鍵時,該標注string放在當前十字交叉的位置.例在區(qū)間[0,2*pi]畫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)’)MATLABAxis([xmin
xmax
ymin
ymax
zminzmax])例在區(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])定制圖形坐標將坐標軸返回到自動缺省值Axisautox、y、z的最大、最小值2、定制坐標MATLAB(1)holdon
holdof例將y=sin(x)、y=cos(x)分別用點和線畫出在同一屏幕上。解
x=linspace(0,2*pi,30);y=sin(x);
z=cos(x);plot(x,z,:)holdon
plot(x,y)保持當前圖形,以便繼續(xù)畫圖到當前圖上釋放當前圖形窗口3、圖形保持MATLAB(2)figure(h)例區(qū)間[0,2*pi]新建兩個窗口分別畫出y=sin(x);z=cos(x)。解
x=linspace(0,2*pi,100);y=sin(x);z=cos(x);plot(x,y);title('sin(x)');pausefigure(2);plot(x,z);title('cos(x)');新建h窗口,激活圖形使其可見,并把它置于其它圖形之上MATLABh=subplot(mrows,ncols,thisplot)劃分整個作圖區(qū)域為mrows*ncols塊(逐行對塊訪問)并激活第thisplot塊,其后的作圖語句將圖形畫在該塊上。激活已劃分為mrows*ncols塊的屏幕中的第thisplot塊,其后的作圖語句將圖形畫在該塊上。命令Subplot(1,1,1)返回非分割狀態(tài)。subplot(mrows,ncols,thisplot)
subplot(1,1,1)4、分割窗口解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);plot(x,b),title(‘sin(x)/cos(x)’)例將屏幕分割為四塊,并分別畫出y=sin(x),z=cos(x),a=sin(x)*cos(x),b=sin(x)/cos(x)。MATLABzoomon單擊鼠標左鍵,則在當前圖形窗口中,以鼠標點中的點為中心的圖形放大2倍;單擊鼠標右鍵,則縮小2倍解
x=linspace(0,2*pi,30);y=sin(x);
plot(x,y)
zoomon例縮放y=sin(x)的圖形zoomoff為當前圖形打開縮放模式關閉縮放模式5、縮放圖形MATLAB(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,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])例
畫出曲面Z=(X+Y).^2在不同視角的網(wǎng)格圖.(2)view([x,y,z])view用空間矢量表示的,三個量只關心它們的比例,與數(shù)值的大小無關,x軸view([1,0,0]),y軸view([0,1,0]),z軸view([0,0,1])。6、改變視角viewMATLAB
Moviein(),getframe,movie()
函數(shù)Moviein()產(chǎn)生一個幀矩陣來存放動畫中的幀;函數(shù)getframe對當前的圖象進行快照;函數(shù)movie()按順序回放各幀。例將曲面peaks做成動畫。解[x,y,z]=peaks(30);surf(x,y,z)axis([-33-33-1010])m=moviein(15);fori=1:15view(-37.5+24*(i-1),30)
m(:,i)=getframe;end
movie(m)7、動畫MATLAB參數(shù)圖形示例1示例1:程序clear;clc;clf;holdont=0:0.01:2*pi;a=1:0.5:3;m=length(a);fork=1:mx=a(k)*(t-sin(t));y=a(k)*(1-cos(t));[y1,t1]=max(y);x1=a(k)*(t(t1)-sin(t(t1)));
plot(x,y)text(x1,y1,['a='num2str(a(k))])endholdoffMATLAB示例2示例2:程序(方法1)clear;clc;clf;holdontheta=0:pi/50:2*pi;a=0.5:0.5:4.5;m=length(a);fork=1:mx=a(k)*cos(theta);y=sqrt(25-a(k)^2)*sin(theta);[y1,t1]=max(y);x1=a(k)*cos(theta(t1));
plot(x,y)text(x1,y1,['a='num2str(a(k))])endholdoffMATLAB示例2:程序(方法2)clear;clc;clf;theta=0:pi/50:2*pi;fora=0.5:0.5:4.5;X=cos(theta).*a;Y=sin(theta).*sqrt(25-a.^2);plot(X,Y),axis('equal'),xlabel('x'),ylabel('y');holdonendtitle('AsetofEllipses')MATLAB裁切示例3示例3:程序(方法1)clear;clc;clf;x=-4:0.1:4;y=x;[mx,my]=meshgrid(x,y);mz=mx.^2-my.^2;ix=find(mx==2);px=2*ones(size(ix));py=my(ix);pz=mz(ix);subplot(1,2,1),holdonmesh(mx,my,mz)plot3(px,py,pz,'r*')xlabel('x');ylabel('y');zlabel('z');title('馬鞍面'),holdoffsubplot(1,2,2)plot3(px,py,pz)xlabel('x');ylabel('y');zlabel('z');title('截平面x=2')MATLAB示例3示例3:程序(方法2)clear;clc;clf;a=2;eps0=0.1;x=-4:0.1:4;y=x;[mx,my]=meshgrid(x,y);mz=mx.^2-my.^2;mx1=a*ones(size(mx));r0=abs(mx-mx1)<=eps0;px=r0.*mx1;py=r0.*my;pz=r0.*mz;subplot(1,2,1)mesh(mx,my,mz);grid,holdon;mesh(mx1,my,mz)plot3(px(r0~=0),py(r0~=0),pz(r0~=0),'b*')xlabel('x');ylabel('y');zlabel('z');title('馬鞍面、截面及交線')subplot(1,2,2)plot3(px(r0~=0),py(r0~=0),pz(r0~=0),'b+'),gridonxlabel('x');ylabel('y');zlabel('z');title('馬鞍面與平面x=2的交線')MATLAB透視示例4示例4:程序[X0,Y0,Z0]=sphere;X=2*X0;Y=2*Y0;Z=2*Z0;surf(X0,Y0,Z0);shadinginterpholdon,mesh(X,Y,Z),colormap(hot),holdoffhiddenoffaxisequal,axisoffMATLABshading函數(shù)功能:設置顏色陰影屬性語法:shadingflat,shadingfaceted,shadinginterp描述:shading函數(shù)控制表面和填充圖形對象的陰影shadingflat每個網(wǎng)格線和平面的顏色是一定的,它由線段末端或平面頂點顏色值確定。shadingfaceted是在shadingflat方式的基礎上在圖中填加黑色網(wǎng)格線。這是默認方式。shadinginterp
通過在直線平面上對色圖指數(shù)或真彩色進行插值來改變每個直線段和表面的顏色。
colormap函數(shù)
功能:設置和獲取當前彩色圖語法:colormap(map),colormap(A)其中,A為色彩函數(shù):autumn從紅色向橘黃色、黃色平穩(wěn)過渡cool由青色和洋紅陰影組成的顏色。它在青色和洋紅之間平穩(wěn)過渡。copper在黑色和亮銅色之間平穩(wěn)過渡flag由紅色、白色、藍色和黑色組成hot在黑色、紅色、橘紅色、黃色和白色之間過渡hsv
從紅色開始,然后為黃色、綠色、青色、藍色、洋紅,最后返回到紅色。鏤空示例5示例5:程序clear;clc;clf;x=-2:0.01:2;y=x;[mx,my]=meshgrid(x,y);mz=mx.^2+my.^2;subplot(1,2,1)m
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 加強個人職業(yè)技能提升的步驟計劃
- 班級工作計劃安排方案
- 開展班級技能培訓的路徑計劃
- 2025年紡織染整助劑:凈洗劑項目發(fā)展計劃
- 2025年紡織、服裝、鞋帽批發(fā)服務項目發(fā)展計劃
- 2025年錘紋漆合作協(xié)議書
- 承包合同屬于勞務合同
- 關于項目延期原因的書面解釋報告
- 礦山合作協(xié)議跟承包協(xié)議
- 關于辦公資源調配的通知
- 邯鄲市垃圾填埋場封場方案
- 2020閩教版信息技術四年級(下冊)全冊教案
- 美國房地產(chǎn)市場特征、框架與周期演變
- introduction to pipeline pilot在處理數(shù)據(jù)中的一些應用
- 光伏發(fā)電工程施工組織設計施工工程光伏發(fā)電工程光伏發(fā)電施工組織設計
- 11鋼的表面淬火解析
- 導數(shù)應用舉例
- 第三講文獻的形成與流布1
- 《電力勘測設計管理制度》修編大綱
- ISO14001風險和機遇評估分析報告
- 《費曼學習法》PPT課件
評論
0/150
提交評論