Matlab學(xué)習(xí)與實(shí)驗(yàn)教程-第4章 MATLAB繪圖_第1頁(yè)
Matlab學(xué)習(xí)與實(shí)驗(yàn)教程-第4章 MATLAB繪圖_第2頁(yè)
Matlab學(xué)習(xí)與實(shí)驗(yàn)教程-第4章 MATLAB繪圖_第3頁(yè)
Matlab學(xué)習(xí)與實(shí)驗(yàn)教程-第4章 MATLAB繪圖_第4頁(yè)
Matlab學(xué)習(xí)與實(shí)驗(yàn)教程-第4章 MATLAB繪圖_第5頁(yè)
已閱讀5頁(yè),還剩67頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第4章MATLAB繪圖MATLAB二維數(shù)據(jù)曲線圖的繪制

MATLAB三維圖形的繪制

MATLAB圖形修飾處理

MATLAB圖像處理與動(dòng)畫(huà)制作MATLAB交互式繪圖工具4.1二維數(shù)據(jù)曲線圖4.1.1繪制單根二維曲線plot函數(shù)的基本調(diào)用格式為:plot(x,y)其中x和y為長(zhǎng)度相同的向量,分別用于存儲(chǔ)x坐標(biāo)和y坐標(biāo)數(shù)據(jù)。例4-1在0≤x≤2

區(qū)間內(nèi),繪制曲線

y=2e-0.5xcos(4πx)程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)例4-2繪制曲線。程序如下:t=0:0.1:2*pi;x=t.*sin(3*t);y=t.*sin(t).*sin(t);plot(x,y);plot函數(shù)最簡(jiǎn)單的調(diào)用格式是只包含一個(gè)輸入?yún)?shù):plot(x)在這種情況下,當(dāng)x是實(shí)向量時(shí),以該向量元素的下標(biāo)為橫坐標(biāo),元素值為縱坐標(biāo)畫(huà)出一條連續(xù)曲線,這實(shí)際上是繪制折線圖。4.1.2繪制多根二維曲線1.plot函數(shù)的輸入?yún)?shù)是矩陣形式

(1)當(dāng)x是向量,y是有一維與x同維的矩陣時(shí),則繪制出多根不同顏色的曲線。曲線條數(shù)等于y矩陣的另一維數(shù),x被作為這些曲線共同的橫坐標(biāo)。

(2)當(dāng)x,y是同維矩陣時(shí),則以x,y對(duì)應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。(3)對(duì)只包含一個(gè)輸入?yún)?shù)的plot函數(shù),當(dāng)輸入?yún)?shù)是實(shí)矩陣時(shí),則按列繪制每列元素值相對(duì)其下標(biāo)的曲線,曲線條數(shù)等于輸入?yún)?shù)矩陣的列數(shù)。當(dāng)輸入?yún)?shù)是復(fù)數(shù)矩陣時(shí),則按列分別以元素實(shí)部和虛部為橫、縱坐標(biāo)繪制多條曲線。2.含多個(gè)輸入?yún)?shù)的plot函數(shù)調(diào)用格式為:plot(x1,y1,x2,y2,…,xn,yn)(1)當(dāng)輸入?yún)?shù)都為向量時(shí),x1和y1,x2和y2,…,xn和yn分別組成一組向量對(duì),每一組向量對(duì)的長(zhǎng)度可以不同。每一向量對(duì)可以繪制出一條曲線,這樣可以在同一坐標(biāo)內(nèi)繪制出多條曲線。(2)當(dāng)輸入?yún)?shù)有矩陣形式時(shí),配對(duì)的x,y按對(duì)應(yīng)列元素為橫、縱坐標(biāo)分別繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。例4-3分析下列程序繪制的曲線。x1=linspace(0,2*pi,100);x2=linspace(0,3*pi,100);x3=linspace(0,4*pi,100);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.具有兩個(gè)縱坐標(biāo)標(biāo)度的圖形在MATLAB中,如果需要繪制出具有不同縱坐標(biāo)標(biāo)度的兩個(gè)圖形,可以使用plotyy繪圖函數(shù)。調(diào)用格式為:plotyy(x1,y1,x2,y2)其中x1,y1對(duì)應(yīng)一條曲線,x2,y2對(duì)應(yīng)另一條曲線。橫坐標(biāo)的標(biāo)度相同,縱坐標(biāo)有兩個(gè),左縱坐標(biāo)用于x1,y1數(shù)據(jù)對(duì),右縱坐標(biāo)用于x2,y2數(shù)據(jù)對(duì)。例4-4用不同標(biāo)度在同一坐標(biāo)內(nèi)繪制曲線y1=0.2e-0.5xcos(4πx)和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.圖形保持holdon/off命令控制是保持原有圖形還是刷新原有圖形,不帶參數(shù)的hold命令在兩種狀態(tài)之間進(jìn)行切換。例4-5采用圖形保持,在同一坐標(biāo)內(nèi)繪制曲線y1=0.2e-0.5xcos(4πx)和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)holdony2=2*exp(-0.5*x).*cos(pi*x);plot(x,y2);holdoff4.1.3設(shè)置曲線樣式MATLAB提供了一些繪圖選項(xiàng),用于確定所繪曲線的線型、顏色和數(shù)據(jù)點(diǎn)標(biāo)記符號(hào),它們可以組合使用。例如,“b-.”表示藍(lán)色點(diǎn)劃線,“y:d”表示黃色虛線并用菱形符標(biāo)記數(shù)據(jù)點(diǎn)。當(dāng)選項(xiàng)省略時(shí),MATLAB規(guī)定,線型一律用實(shí)線,顏色將根據(jù)曲線的先后順序依次。要設(shè)置曲線樣式可以在plot函數(shù)中加繪圖選項(xiàng),其調(diào)用格式為:plot(x1,y1,選項(xiàng)1,x2,y2,選項(xiàng)2,…,xn,yn,選項(xiàng)n)例4-6在同一坐標(biāo)內(nèi),分別用不同線型和顏色繪制曲線y1=0.2e-0.5xcos(4πx)和y2=2e-0.5xcos(πx),標(biāo)記兩曲線交叉點(diǎn)。程序如下: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相等點(diǎn)(近似相等)的下標(biāo)x1=x(k);%取y1與y2相等點(diǎn)的x坐標(biāo)y3=0.2*exp(-0.5*x1).*cos(4*pi*x1);%求y1與y2值相等點(diǎn)的y坐標(biāo)plot(x,y1,x,y2,'k:',x1,y3,'bp');4.1.4圖形標(biāo)注與坐標(biāo)控制1.圖形標(biāo)注有關(guān)圖形標(biāo)注函數(shù)的調(diào)用格式為:title(圖形名稱)xlabel(x軸說(shuō)明)ylabel(y軸說(shuō)明)text(x,y,圖形說(shuō)明)legend(圖例1,圖例2,…)函數(shù)中的說(shuō)明文字,除使用標(biāo)準(zhǔn)的ASCII字符外,還可使用LaTeX格式的控制字符,這樣就可以在圖形上添加希臘字母、數(shù)學(xué)符號(hào)及公式等內(nèi)容。例如,text(0.3,0.5,‘sin({\omega}t+{\beta})’)將得到標(biāo)注效果sin(ωt+β)。例4-7在0≤x≤2

區(qū)間內(nèi),繪制曲線y1=2e-0.5x和y2=cos(4πx),并給圖形添加圖形標(biāo)注。程序如下:x=0:pi/100:2*pi;y1=2*exp(-0.5*x);y2=cos(4*pi*x);plot(x,y1,x,y2)title('xfrom0to2{\pi}');%加圖形標(biāo)題xlabel('VariableX');%加X(jué)軸說(shuō)明ylabel('VariableY');%加Y軸說(shuō)明text(0.8,1.5,'曲線y1=2e^{-0.5x}');%在指定位置添加圖形說(shuō)明text(2.5,1.1,'曲線y2=cos(4{\pi}x)');legend(‘y1’,‘y2’)%加圖例2.坐標(biāo)控制axis函數(shù)的調(diào)用格式為:axis([xminxmaxyminymaxzminzmax])axis函數(shù)功能豐富,常用的格式還有:axisequal:縱、橫坐標(biāo)軸采用等長(zhǎng)刻度。axissquare:產(chǎn)生正方形坐標(biāo)系(缺省為矩形)。axisauto:使用缺省設(shè)置。axisoff:取消坐標(biāo)軸。axison:顯示坐標(biāo)軸。給坐標(biāo)加網(wǎng)格線用grid命令來(lái)控制。gridon/off命令控制是畫(huà)還是不畫(huà)網(wǎng)格線,不帶參數(shù)的grid命令在兩種狀態(tài)之間進(jìn)行切換。給坐標(biāo)加邊框用box命令來(lái)控制。boxon/off命令控制是加還是不加邊框線,不帶參數(shù)的box命令在兩種狀態(tài)之間進(jìn)行切換。例4-8在同一坐標(biāo)中,可以繪制3個(gè)同心圓,并加坐標(biāo)控制。程序如下:t=0:0.01:2*pi;x=exp(i*t);y=[x;2*x;3*x]';plot(y)gridon;%加網(wǎng)格線boxon;%加坐標(biāo)邊框axisequal%坐標(biāo)軸采用等刻度4.1.5圖形窗口的分割subplot函數(shù)的調(diào)用格式為:subplot(m,n,p)該函數(shù)將當(dāng)前圖形窗口分成m×n個(gè)繪圖區(qū),即每行n個(gè),共m行,區(qū)號(hào)按行優(yōu)先編號(hào),且選定第p個(gè)區(qū)為當(dāng)前活動(dòng)區(qū)。在每一個(gè)繪圖區(qū)允許以不同的坐標(biāo)系單獨(dú)繪制圖形。例4-9在圖形窗口中,以子圖形式同時(shí)繪制多根曲線。

4.2其他二維圖形4.2.1對(duì)函數(shù)自適應(yīng)采樣的繪圖函數(shù)fplot函數(shù)的調(diào)用格式為:fplot(fname,lims,tol,選項(xiàng))其中fname為函數(shù)名,以字符串形式出現(xiàn),lims為x,y的取值范圍,tol為相對(duì)允許誤差,其系統(tǒng)默認(rèn)值為2e-3。選項(xiàng)定義與plot函數(shù)相同。例4-10用fplot函數(shù)繪制f(x)=cos(tan(πx))的曲線。命令如下:fplot('cos(tan(pi*x))',[0,1],1e-4)4.2.2其他坐標(biāo)系下的二維數(shù)據(jù)曲線圖1.對(duì)數(shù)坐標(biāo)圖形MATLAB提供了繪制對(duì)數(shù)和半對(duì)數(shù)坐標(biāo)曲線的函數(shù),調(diào)用格式為:semilogx(x1,y1,選項(xiàng)1,x2,y2,選項(xiàng)2,…)semilogy(x1,y1,選項(xiàng)1,x2,y2,選項(xiàng)2,…)loglog(x1,y1,選項(xiàng)1,x2,y2,選項(xiàng)2,…)例4-11繪制y=10x2的對(duì)數(shù)坐標(biāo)圖并與直角線性坐標(biāo)圖進(jìn)行比較。2.極坐標(biāo)圖polar函數(shù)用來(lái)繪制極坐標(biāo)圖,其調(diào)用格式為:polar(theta,rho,選項(xiàng))其中theta為極坐標(biāo)極角,rho為極坐標(biāo)矢徑,選項(xiàng)的內(nèi)容與plot函數(shù)相似。例4-12繪制r=sin(t)cos(t)的極坐標(biāo)圖,并標(biāo)記數(shù)據(jù)點(diǎn)。程序如下:t=0:pi/50:2*pi;r=sin(t).*cos(t);polar(t,r,'-*');4.2.3二維統(tǒng)計(jì)分析圖在MATLAB中,二維統(tǒng)計(jì)分析圖形很多,常見(jiàn)的有條形圖、階梯圖、桿圖和填充圖等,所采用的函數(shù)分別是:bar(x,y,選項(xiàng))stairs(x,y,選項(xiàng))stem(x,y,選項(xiàng))fill(x1,y1,選項(xiàng)1,x2,y2,選項(xiàng)2,…)例4-13分別以條形圖、階梯圖、桿圖和填充圖形式繪制曲線y=2sin(x)。程序如下:x=0:pi/10:2*pi;y=2*sin(x);subplot(2,2,1);bar(x,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)計(jì)分析繪圖函數(shù)還有很多,例如,用來(lái)表示各元素占總和的百分比的餅圖、復(fù)數(shù)的相量圖等等。例4-14繪制圖形:(1)某企業(yè)全年各季度的產(chǎn)值(單位:萬(wàn)元)分別為:2347,1827,2043,3025,試用餅圖作統(tǒng)計(jì)分析。(2)繪制復(fù)數(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,-1.5-6i]);title('相量圖');4.3三維圖形4.3.1三維曲線plot3函數(shù)與plot函數(shù)用法十分相似,其調(diào)用格式為:plot3(x1,y1,z1,選項(xiàng)1,x2,y2,z2,選項(xiàng)2,…,xn,yn,zn,選項(xiàng)n)其中每一組x,y,z組成一組曲線的坐標(biāo)參數(shù),選項(xiàng)的定義和plot函數(shù)相同。當(dāng)x,y,z是同維向量時(shí),則x,y,z對(duì)應(yīng)元素構(gòu)成一條三維曲線。當(dāng)x,y,z是同維矩陣時(shí),則以x,y,z對(duì)應(yīng)列元素繪制三維曲線,曲線條數(shù)等于矩陣列數(shù)。例4-15繪制三維曲線。程序如下:t=0:pi/100:20*pi;x=sin(t);y=cos(t);z=t.*sin(t).*cos(t);plot3(x,y,z);title('Linein3-DSpace');xlabel('X');ylabel('Y');zlabel('Z');gridon;4.3.2三維曲面1.產(chǎn)生三維數(shù)據(jù)在MATLAB中,利用meshgrid函數(shù)產(chǎn)生平面區(qū)域內(nèi)的網(wǎng)格坐標(biāo)矩陣。其格式為:x=a:d1:b;y=c:d2:d;[X,Y]=meshgrid(x,y);語(yǔ)句執(zhí)行后,矩陣X的每一行都是向量x,行數(shù)等于向量y的元素的個(gè)數(shù),矩陣Y的每一列都是向量y,列數(shù)等于向量x的元素的個(gè)數(shù)。2.繪制三維曲面的函數(shù)surf函數(shù)和mesh函數(shù)的調(diào)用格式為:mesh(x,y,z,c)surf(x,y,z,c)一般情況下,x,y,z是維數(shù)相同的矩陣。x,y是網(wǎng)格坐標(biāo)矩陣,z是網(wǎng)格點(diǎn)上的高度矩陣,c用于指定在不同高度下的顏色范圍。例4-16繪制三維曲面圖z=sin(x+sin(y))-x/10。程序如下:[x,y]=meshgrid(0:0.25:4*pi);z=sin(x+sin(y))-x/10;mesh(x,y,z);axis([04*pi04*pi-2.51]);此外,還有帶等高線的三維網(wǎng)格曲面函數(shù)meshc和帶底座的三維網(wǎng)格曲面函數(shù)meshz。其用法與mesh類似,不同的是meshc還在xy平面上繪制曲面在z軸方向的等高線,meshz還在xy平面上繪制曲面的底座。例4-17在xy平面內(nèi)選擇區(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.標(biāo)準(zhǔn)三維曲面sphere函數(shù)的調(diào)用格式為:[x,y,z]=sphere(n)cylinder函數(shù)的調(diào)用格式為:[x,y,z]=cylinder(R,n)MATLAB還有一個(gè)peaks函數(shù),稱為多峰函數(shù),常用于三維曲面的演示。例4-18繪制標(biāo)準(zhǔn)三維曲面圖形。程序如下: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);subplot(2,1,2);[x,y,z]=peaks(30);surf(x,y,z);4.3.3其他三維圖形在介紹二維圖形時(shí),曾提到條形圖、桿圖、餅圖和填充圖等特殊圖形,它們還可以以三維形式出現(xiàn),使用的函數(shù)分別是bar3、stem3、pie3和fill3。bar3函數(shù)繪制三維條形圖,常用格式為:bar3(y)bar3(x,y)stem3函數(shù)繪制離散序列數(shù)據(jù)的三維桿圖,常用格式為:stem3(z)stem3(x,y,z)pie3函數(shù)繪制三維餅圖,常用格式為:pie3(x)fill3函數(shù)等效于三維函數(shù)fill,可在三維空間內(nèi)繪制出填充過(guò)的多邊形,常用格式為:fill3(x,y,z,c)例4-19繪制三維圖形:(1)繪制魔方陣的三維條形圖。(2)以三維桿圖形式繪制曲線y=2sin(x)。(3)已知x=[2347,1827,2043,3025],繪制餅圖。(4)用隨機(jī)的頂點(diǎn)坐標(biāo)值畫(huà)出五個(gè)黃色三角形。程序如下: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')例4-20繪制多峰函數(shù)的瀑布圖和等高線圖。程序如下:subplot(1,2,1);[X,Y,Z]=peaks(30);waterfall(X,Y,Z)xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis');subplot(1,2,2);contour3(X,Y,Z,12,'k');%其中12代表高度的等級(jí)數(shù)xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis');4.4隱函數(shù)繪圖4.4.1隱函數(shù)二維繪圖MATLAB提供了一個(gè)ezplot函數(shù)繪制隱函數(shù)圖形,下面介紹其用法。(1)對(duì)于函數(shù)f=f(x),ezplot函數(shù)的調(diào)用格式為:ezplot(f):在默認(rèn)區(qū)間-2π<x<2π繪制f=f(x)的圖形。ezplot(f,[a,b]):在區(qū)間a<x<b繪制f=f(x)的圖形。(2)對(duì)于隱函數(shù)f=f(x,y),ezplot函數(shù)的調(diào)用格式為:ezplot(f):在默認(rèn)區(qū)間-2π<x<2π和-2π<y<2π繪制f(x,y)=0的圖形。ezplot(f,[xmin,xmax,ymin,ymax]):在區(qū)間xmin<x<xmax和ymin<y<ymax繪制f(x,y)=0的圖形。ezplot(f,[a,b]):在區(qū)間a<x<b和a<y<b繪制f(x,y)=0的圖形。(3)對(duì)于參數(shù)方程x=x(t)和y=y(t),ezplot函數(shù)的調(diào)用格式為:ezplot(x,y):在默認(rèn)區(qū)間0<t<2π繪制x=x(t)和y=y(t)的圖形。ezplot(x,y,[tmin,tmax]):在區(qū)間tmin<t<tmax繪制x=x(t)和y=y(t)的圖形。例4-21隱函數(shù)繪圖應(yīng)用舉例。程序如下:subplot(2,2,1);ezplot('x^2+y^2-9');axisequalsubplot(2,2,2);ezplot('x^3+y^3-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])4.4.2隱函數(shù)三維繪圖隱函數(shù)三維繪圖函數(shù)有ezcontour、ezcontourf、ezmesh、ezmeshc、ezplot3、ezpolar、ezsurf、ezsurfc,它們的調(diào)用格式基本相同,需要時(shí)請(qǐng)讀者查閱幫助信息。例4-22繪制下列曲面:4.5圖形修飾處理4.5.1視點(diǎn)處理MATLAB提供了設(shè)置視點(diǎn)的函數(shù)view,其調(diào)用格式為:view(az,el)其中az為方位角,el為仰角,它們均以度為單位。系統(tǒng)缺省的視點(diǎn)定義為方位角-37.5°,仰角30°。例4-23從不同視點(diǎn)觀察三維曲線。4.5.2色彩處理1.顏色的向量表示MATLAB除用字符表示顏色外,還可以用含有3個(gè)元素的向量表示顏色。向量元素在[0,1]范圍取值,3個(gè)元素分別表示紅、綠、藍(lán)3種顏色的相對(duì)亮度,稱為RGB三元組。2.色圖色圖(Colormap)是MATLAB系統(tǒng)引入的概念。在MATLAB中,每個(gè)圖形窗口只能有一個(gè)色圖。色圖是m×3的數(shù)值矩陣,它的每一行是RGB三元組。色圖矩陣可以人為地生成,也可以調(diào)用MATLAB提供的函數(shù)來(lái)定義色圖矩陣。3.三維表面圖形的著色三維表面圖實(shí)際上就是在網(wǎng)格圖的每一個(gè)網(wǎng)格片上涂上顏色。surf函數(shù)用缺省的著色方式對(duì)網(wǎng)格片著色。除此之外,還可以用shading命令來(lái)改變著色方式。shadingfaceted命令將每個(gè)網(wǎng)格片用其高度對(duì)應(yīng)的顏色進(jìn)行著色,但網(wǎng)格線仍保留著,其顏色是黑色。這是系統(tǒng)的缺省著色方式。shadingflat命令將每個(gè)網(wǎng)格片用同一個(gè)顏色進(jìn)行著色,且網(wǎng)格線也用相應(yīng)的顏色,從而使得圖形表面顯得更加光滑。shadinginterp命令在網(wǎng)格片內(nèi)采用顏色插值處理,得出的表面圖顯得最光滑。例4-243種圖形著色方式的效果展示。程序如下:[x,y,z]=sphere(20);colormap(copper);subplot(1,3,1);surf(x,y,z);axisequalsubplot(1,3,2);surf(x,y,z);shadingflat;axisequalsubplot(1,3,3);surf(x,y,z);shadinginterp;axisequal4.5.3圖形的裁剪處理例4-25

繪制三維曲面圖,并進(jìn)行插值著色處理,裁掉圖中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);shadinginterp;pause%程序暫停i=find(x<=0&y<=0);z1=z;z1(i)=NaN;surf(x,y,z1);shadinginterp;4.6圖像處理與動(dòng)畫(huà)制作4.6.1圖像處理1.圖像的讀/寫(xiě)imread和imwrite函數(shù)分別用于將圖像文件讀入MATLAB工作空間,以及將圖像數(shù)據(jù)和色圖數(shù)據(jù)一起寫(xiě)入一定格式的圖像文件。MATLAB支持多種圖像文件格式,如.bmp、.jpg、.jpeg、.tif等。2.圖像的顯示MATLAB用image函數(shù)顯示圖像,其調(diào)用格式為:image(x)其中x為圖形的數(shù)據(jù)矩陣。與image函數(shù)類似的函數(shù)是imagesc,它的調(diào)用格式和功能都與image函數(shù)一樣,只是圖像著色方式不同。為了保證圖像的顯示效果,一般還應(yīng)使用colormap函數(shù)設(shè)置圖像色圖。例4-26有一圖像文件logo.jpg,在圖形窗口顯示該圖像。程序如下:[x,cmap]=imread('logo.jpg');%讀取圖像的數(shù)據(jù)陣和色圖陣image(x);colormap(cmap);axisimageoff %保持寬高比并取消坐標(biāo)軸

4.6.2動(dòng)畫(huà)制作1.制作逐幀動(dòng)畫(huà)MATLAB提供getframe、moviein和movie函數(shù)進(jìn)行動(dòng)畫(huà)制作。(1)getframe函數(shù)getframe函數(shù)可截取一幅畫(huà)面信息(稱為動(dòng)畫(huà)中的一幀),一幅畫(huà)面信息形成一個(gè)很大的列向量。顯然,保存n幅圖面就需一個(gè)大矩陣。(2)moviein函數(shù)moviein(n)函數(shù)用來(lái)建立一個(gè)足夠大的n列矩陣。該矩陣用來(lái)保存n幅畫(huà)面的數(shù)據(jù),以備播放。之所以要事先建立一個(gè)大矩陣,是為了提高程序運(yùn)行速度。(3)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論