MATLAB在二維繪圖中的應(yīng)用培訓(xùn)講學(xué)_第1頁(yè)
MATLAB在二維繪圖中的應(yīng)用培訓(xùn)講學(xué)_第2頁(yè)
MATLAB在二維繪圖中的應(yīng)用培訓(xùn)講學(xué)_第3頁(yè)
MATLAB在二維繪圖中的應(yīng)用培訓(xùn)講學(xué)_第4頁(yè)
MATLAB在二維繪圖中的應(yīng)用培訓(xùn)講學(xué)_第5頁(yè)
已閱讀5頁(yè),還剩16頁(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)介

1、Good is good, but better carries it.精益求精,善益求善。MATLAB在二維繪圖中的應(yīng)用-MATLAB語(yǔ)言課程論文MATLAB在二維繪圖中的應(yīng)用姓名:郭露學(xué)號(hào):12012241985專業(yè):電氣工程與自動(dòng)化班級(jí):12級(jí)電氣1班指導(dǎo)老師:李虹學(xué)院:物理電氣信息學(xué)院完成日期:2013年12月10日MATLAB在二維繪圖中的應(yīng)用(姓名:郭露1201224198512級(jí)電氣1班)【摘要】二維圖形是將平面坐標(biāo)上的數(shù)據(jù)點(diǎn)連接起來(lái)的平面圖形。可以采用不同的坐標(biāo)系,如直角坐標(biāo)、對(duì)數(shù)坐標(biāo)、極坐標(biāo)等。二維圖形的繪制是其他繪圖操作的基礎(chǔ)。強(qiáng)大的繪圖功能是MATLAB的特點(diǎn)之一。MAT

2、LAB提供了一系列的繪圖函數(shù),用戶不僅不許考慮繪圖細(xì)節(jié),只需給出一些基本的參數(shù)就能得到所需要的圖形,這一類(lèi)函數(shù)稱為高層繪圖函數(shù)。除此之外,MATLAB還提供了直接對(duì)句柄進(jìn)行操作的一系列的低層的繪圖操作。這類(lèi)操作將圖形的每個(gè)元素(如坐標(biāo)軸、曲線、文字等)看做是一個(gè)獨(dú)立的對(duì)象,系統(tǒng)給每個(gè)對(duì)象獨(dú)立的分配一個(gè)句柄,以后可以通過(guò)該句柄對(duì)改圖元素進(jìn)行操作,而不影響圖形的其他部分。高層繪圖操作簡(jiǎn)單明了,方便高效,使用戶最常使用的繪圖方法,而低層繪圖操作控制和表現(xiàn)圖形的能力更強(qiáng),為用戶自主繪圖創(chuàng)造了條件。其實(shí)MATLAB的高層繪圖函數(shù)都是利用低層繪圖函數(shù)建立起來(lái)的。所以MATLAB的計(jì)算準(zhǔn)確、效率高、使用快捷

3、等優(yōu)點(diǎn)常被廣泛應(yīng)用于科學(xué)和工程領(lǐng)域.【關(guān)鍵字】MATLAB語(yǔ)言二維繪圖圖像處理【引言】MATLAB語(yǔ)言是當(dāng)前國(guó)際學(xué)科界應(yīng)用很廣泛的一種軟件,強(qiáng)大的繪圖功能是MATLAB的特點(diǎn)之一。MATLAB提供了一系列的繪圖函數(shù),利用它強(qiáng)大的圖像處理來(lái)繪制二維圖形既簡(jiǎn)單而且也很方便。在繪制二維圖形的過(guò)程中也用到了MATLAB語(yǔ)言的其他功能,比如說(shuō)它提供的一些函數(shù),利用這些函數(shù)可以方便的生成一些特殊矩陣,因此可生成一個(gè)坐標(biāo)平面。MATLAB語(yǔ)言強(qiáng)大的功能也在二維繪圖中的得到了很廣泛的應(yīng)用,利用它所提供的精細(xì)的圖像處理功能還可以對(duì)所繪制的二維圖形作一個(gè)修飾的處理。MATLAB語(yǔ)言具有強(qiáng)大的以圖形化顯示矩陣和數(shù)組

4、的能力,同時(shí)它給這些圖形增加注釋并且可以對(duì)圖形進(jìn)行標(biāo)注和打印。MATLAB的圖形技術(shù)包括二維的可視化、圖形處理、動(dòng)畫(huà)等高層次的專業(yè)圖形的高級(jí)繪圖,例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等。那么,如何把它強(qiáng)大的功能應(yīng)用于實(shí)際應(yīng)用中,下面我們將用實(shí)例說(shuō)明。【正文】MATLAB的主要功能及特點(diǎn)MATLAB近幾年廣泛用于圖像處理和識(shí)別,使用MATLAB設(shè)計(jì)模式識(shí)別應(yīng)用軟件將使設(shè)計(jì)者獲得更大的自由,可以任意執(zhí)行特殊的算法和實(shí)現(xiàn)復(fù)雜的操作,MATLAB之所以成為世界頂級(jí)的科學(xué)計(jì)算與數(shù)學(xué)應(yīng)用軟件,是因?yàn)樗S著版本的升級(jí)與不斷完善而具有愈來(lái)愈強(qiáng)大的功能。(1)數(shù)值計(jì)算功能。(2)符號(hào)計(jì)算功能。(3)數(shù)

5、據(jù)分析功能。(4)動(dòng)態(tài)仿真功能。(5)圖形文字統(tǒng)一處理功能。MATLAB有三大特點(diǎn):一是功能強(qiáng)大。主要包括數(shù)值計(jì)算和符號(hào)計(jì)算、計(jì)算結(jié)果和編程可視化、數(shù)學(xué)和文字統(tǒng)一處理、離線和在線計(jì)算。二是界面友好,編程效率高。MATLAB是一種以矩陣為基本單元的可視化程序設(shè)計(jì)語(yǔ)言,語(yǔ)法結(jié)構(gòu)簡(jiǎn)單,數(shù)據(jù)類(lèi)型單一,指令表達(dá)與標(biāo)準(zhǔn)教科書(shū)的數(shù)學(xué)表達(dá)式相近。三是開(kāi)放性強(qiáng)。MATLAB有很好的可擴(kuò)充性,可以把它當(dāng)成一種更高級(jí)的語(yǔ)言去使用。使用它很容易編寫(xiě)各種通用或?qū)S脩?yīng)用程序。MATLAB在二維繪圖中的具體應(yīng)用1.常用的繪圖函數(shù)1plot函數(shù)的基本用法plot函數(shù)用于繪制二維平面上的線性坐標(biāo)曲線圖,要提供一組x坐標(biāo)和對(duì)應(yīng)的

6、y坐標(biāo),可以繪制分別以x和y為橫、縱坐標(biāo)的二維曲線。plot函數(shù)的應(yīng)用格式plot(x,y)其中x,y為長(zhǎng)度相同的向量,存儲(chǔ)x坐標(biāo)和y坐標(biāo)。2含多個(gè)輸入?yún)?shù)的plot函數(shù)plot函數(shù)可以包含若干組向量對(duì),每一組可以繪制出一條曲線。含多個(gè)輸入?yún)?shù)的plot函數(shù)調(diào)用格式為:plot(x1,y1,x2,y2,xn,yn)當(dāng)輸入?yún)?shù)有矩陣形式時(shí),配對(duì)的x,y按對(duì)應(yīng)的列元素為橫坐標(biāo)和縱坐標(biāo)繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。例1作出函數(shù)的圖形,并觀測(cè)它們的周期性。先作函數(shù)在上的圖形,用MATLAB作圖的程序代碼為:x=linspace(-4*pi,4*pi,300);%產(chǎn)生300維向量xy=sin(x);

7、%正玄函數(shù)plot(x,y)%二維圖形繪圖命令結(jié)果如圖1所示此圖也可用fplot命令,相應(yīng)的MATLAB程序代碼為:clear;close;%clear清理內(nèi)存;close關(guān)閉已有口。fplot(sin(x),-4*pi,4*pi)%繪制正玄圖形結(jié)果如圖2所示圖1的圖形圖2的圖形2.fill將資料點(diǎn)視為多邊行頂點(diǎn),并將此多邊行涂上顏色:x=linspace(0,10,50);y=sin(x).*exp(-x/3);fill(x,y,b);%b為藍(lán)色3.feather將每一個(gè)資料點(diǎn)視復(fù)數(shù),并以箭號(hào)畫(huà)出:theta=linspace(0,2*pi,20);z=cos(theta)+i*sin(th

8、eta);feather(z);二維圖形的修飾由前面的圖1至2可以看出,當(dāng)利用plot命令繪圖時(shí),雖然運(yùn)用起來(lái)比較簡(jiǎn)單,但它所自動(dòng)產(chǎn)生的圖形卻顯得有些簡(jiǎn)單,未能產(chǎn)生特殊的效果。為此MATLAB提供了一些圖形函數(shù),專門(mén)對(duì)由plot命令所畫(huà)出的圖形進(jìn)行進(jìn)一步的修飾,以使其更加美觀、更便于應(yīng)用。如坐標(biāo)軸范圍的設(shè)定(axis命令)、加坐標(biāo)軸名稱(xlabel、ylabel命令)、加網(wǎng)絡(luò)(grid命令)、加圖形加圖題(title命令)、對(duì)圖形進(jìn)行文字注釋(text命令)等。1.用不同的線型及顏色加以繪制。x=-2*pi:2*pi/30:2*pi;%產(chǎn)生向量xy1=sin(x);y2=cos(x);%正余

9、玄函數(shù)plot(x,y1,x,y2,gp)%gp表示繪出的圖形是綠色五角星線結(jié)果如圖4圖4不同線型與顏色繪制的正余玄圖形2.坐標(biāo)軸的調(diào)整MATLAB可以自動(dòng)根據(jù)曲線數(shù)據(jù)的范圍選擇合適的坐標(biāo)系,從而使得曲線能夠盡可能清晰地顯示出來(lái),所以在一般情況下用戶不必去進(jìn)行坐標(biāo)系的選擇。但是,如果用戶對(duì)MATLAB所自動(dòng)生成的坐標(biāo)軸不太滿意的話,則可以利用axis所要繪制出的圖形的坐標(biāo)軸進(jìn)行調(diào)整。axis命令的功能非常豐富,按常用用法有如下4類(lèi)調(diào)整坐標(biāo)軸的范圍;調(diào)整坐標(biāo)軸的狀態(tài);保存調(diào)整坐標(biāo)軸的范圍;保存坐標(biāo)軸的狀態(tài)。3.設(shè)置圖形標(biāo)題MATLAB中有專門(mén)的函數(shù)title來(lái)為圖形添加標(biāo)題,調(diào)用這種函數(shù)的格式是

10、:(1)title(string)設(shè)置當(dāng)前繪圖區(qū)的標(biāo)題為字符串string的值。(2)title(.,PropertyName,PropertyValue,.)可以在添加或設(shè)置標(biāo)題的同時(shí),設(shè)置標(biāo)題的屬性,如字體、顏色、加粗等。例2圖形標(biāo)注函數(shù)title使用實(shí)例。利用title函數(shù)為圖形添加標(biāo)題。解:在命令窗口輸入下面的代碼x=0:0.05:10;y=exp(-0.2*x).*cos(x);plot(x,y)title(ite0.2xcos(x),FontWeight,Bold)執(zhí)行程序后,可以得到2-18所示結(jié)果圖形:4.在圖形中顯示文字MATLAB允許用戶在圖形的任意位置加注一串文字。加注文

11、字的時(shí)候,MATLAB提供了兩種不同確定文字位置的操作方式:(1)用坐標(biāo)軸確定文字位置;(2)用鼠標(biāo)確定文字位置。MATLAB允許用戶在圖形窗口的任意位置用低級(jí)命令書(shū)寫(xiě)一串字符。該方式的格式是text(x,y,string,option),主要功能是在圖形指定坐標(biāo)位置(x,y)處,寫(xiě)出由string所給出的字符串。坐標(biāo)(x,y)的單位是由選項(xiàng)參數(shù)option決定的。如果不給出該選項(xiàng)參數(shù),則(x,y)坐標(biāo)的單位與圖中的單位是一致的。如果選項(xiàng)參數(shù)取為sc,則(x,y)坐標(biāo)表示規(guī)范化的窗口相對(duì)坐標(biāo),其變化范圍為01,即該窗口繪圖范圍的左下角坐標(biāo)為(0,0),右上角坐標(biāo)為(1,1)。例3坐標(biāo)軸標(biāo)注函數(shù)

12、text使用實(shí)例。利用text函數(shù)在y=sinx指定位置添加文字。解:在命令窗口輸入以下代碼x=0:pi/100:2*pi;y=sin(x);plot(x,y)axis(02*pi-1.51.5)line(0,2*pi,0,0)text(0.5,0.85,sin(x)sc)text(0.5*pi,0.5,position)text(1.5*pi,-0.5,negative)3.手工繪圖方式手工繪圖的關(guān)鍵在于如何選取繪圖時(shí)的一些關(guān)鍵數(shù)據(jù)點(diǎn),如何將這些數(shù)據(jù)點(diǎn)的坐標(biāo)值讀入變量,然后加以利用。MATLAB提供了用鼠標(biāo)選取數(shù)據(jù)點(diǎn)的命令ginput,當(dāng)在圖形窗口中的某一位置按下某個(gè)鼠標(biāo)鍵(或鍵盤(pán)上除回車(chē)之

13、外的任何鍵)時(shí),ginput將返回該位置的坐標(biāo)值。x,y=ginputx,y=ginput(n)x,y,button=ginput(n)(1)利用x,y=ginput,當(dāng)在圖形窗口中按下某個(gè)鼠標(biāo)鍵或某一鍵盤(pán)鍵時(shí),讀取此時(shí)鼠標(biāo)所在位置的一系列坐標(biāo)值,并將這些坐標(biāo)值存儲(chǔ)到向量x和y中,直到按回車(chē)鍵后才中止該讀書(shū)過(guò)程。(2)利用命令x,y=ginput(n),當(dāng)在圖形窗口中按下某一個(gè)鼠標(biāo)鍵或某一鍵盤(pán)鍵時(shí),讀取此時(shí)鼠標(biāo)所在位置的一系列坐標(biāo)值,并將這些坐標(biāo)值存儲(chǔ)到向量x和y中,總共讀取n個(gè)數(shù)據(jù)點(diǎn)。(3)命令x,y,button=ginput(n)也可利用鼠標(biāo)從圖形窗口中讀取n個(gè)數(shù)據(jù)點(diǎn),并將這些數(shù)據(jù)點(diǎn)的坐

14、標(biāo)值存儲(chǔ)到向量x和y中,同時(shí)還將讀數(shù)過(guò)程中鼠標(biāo)的按鍵情況或鍵盤(pán)的按鍵情況記錄到向量變量button中。在這里需要說(shuō)明以下問(wèn)題:在讀取第i個(gè)數(shù)據(jù)點(diǎn)時(shí),若按的是鼠標(biāo)左鍵,則button(i)=1;若按的是鼠標(biāo)中鍵,則button(i)2;若按的是鼠標(biāo)右鍵,則button(i)=3;若按的是鍵盤(pán)鍵,則button(i)存儲(chǔ)相應(yīng)鍵的ASC。該命令僅僅只是讀取了一些數(shù)據(jù)點(diǎn),并沒(méi)有繪制圖形。在讀取了一些數(shù)據(jù)點(diǎn)后,我們就可以利用某種方法或按某種或圖要求把這些數(shù)據(jù)點(diǎn)連成一起,從而達(dá)到手工繪圖的效果。三、結(jié)論由上面二維制圖我們不難得出以下結(jié)論:在matlab中,最基本且應(yīng)用最為廣泛的繪圖函數(shù)為plot函數(shù),利用

15、它可以在二維平面上繪制出不同的曲線。Plot函數(shù)用于繪制xy平面上的線性坐標(biāo)曲線圖需要提供一組x坐標(biāo)及其各點(diǎn)對(duì)應(yīng)的y坐標(biāo),這樣就可以繪制出分別以x,y為橫縱坐標(biāo)的二維曲線。Matlab還提供了一些繪圖選項(xiàng),用于確定所繪曲線的線性,顏色和數(shù)據(jù)點(diǎn)標(biāo)記符號(hào),它們可以組合使用。數(shù)據(jù)點(diǎn)可以用向量或矩陣的形式給出,類(lèi)型可以是實(shí)型或復(fù)型,在取數(shù)據(jù)點(diǎn)時(shí)一般都是等間隔采樣,這對(duì)繪制高頻率變化的函數(shù)不夠精確,為提高精度,繪制出比較真實(shí)的函數(shù)曲線,就不能等間隔取樣,而必須在變化率大的區(qū)段密集采樣,以充分反映函數(shù)的變化規(guī)律,進(jìn)而提高圖形的真實(shí)性。Fplot函數(shù)可自適應(yīng)的對(duì)函數(shù)進(jìn)行采樣能更好地反映函數(shù)變化規(guī)律。在mat

16、lab中如果需要繪制出具有不同坐標(biāo)標(biāo)度的兩個(gè)圖形,可以使用plotyy函數(shù)。這種圖形能把函數(shù)值具有不同量綱,不同數(shù)量級(jí)的兩個(gè)函數(shù)繪制在同一坐標(biāo)中,有利于圖形數(shù)據(jù)的對(duì)比分析。同時(shí)利用MATLAB語(yǔ)言強(qiáng)大的繪圖功能可以精確的繪制出一系列的三維圖像。MATLAB提供了一系列的繪圖函數(shù),用戶不僅不許考慮繪圖細(xì)節(jié),只需給出一些基本的參數(shù)就能得到所需要的圖形,這一類(lèi)函數(shù)稱為高層繪圖函數(shù)。除此之外,MATLAB還提供了直接對(duì)句柄進(jìn)行操作的一系列的低層的繪圖操作。這類(lèi)操作將圖形的每個(gè)元素看做是一個(gè)獨(dú)立的對(duì)象,系統(tǒng)給每個(gè)對(duì)象獨(dú)立的分配一個(gè)句柄,以后可以通過(guò)該句柄對(duì)改圖元素進(jìn)行操作,而不影響圖形的其他部分。高層繪

17、圖操作簡(jiǎn)單明了,方便高效,使用戶最常使用的繪圖方法,而低層繪圖操作控制和表現(xiàn)圖形的能力更強(qiáng),為用戶自主繪圖創(chuàng)造了條件。其實(shí)MATLAB的高層繪圖函數(shù)都是利用低層繪圖函數(shù)建立起來(lái)的。MATLAB在繪制圖形方面更進(jìn)一步的體現(xiàn)出了它強(qiáng)大的繪圖功能。四學(xué)習(xí)心得Matlab和其它語(yǔ)言不一樣,如果抱著把其他語(yǔ)言的思想運(yùn)用在Matlab里面的話,即使程序運(yùn)行不出錯(cuò),也很難把握Matlab的精髓,也就很難發(fā)揮Matlab的作用。在接觸matlab之后,我發(fā)現(xiàn)matlab語(yǔ)法簡(jiǎn)單,易于繪制圖形,編程也非常容易。Matlab是功能強(qiáng)大的科學(xué)及工程計(jì)算軟件,它不但具有矩陣計(jì)算為基礎(chǔ)的強(qiáng)大數(shù)學(xué)計(jì)算和分析功能,而且還具

18、有豐富的可視化圖形表現(xiàn)功能和方便的程序設(shè)計(jì)能力。Matlab的應(yīng)用領(lǐng)域極為廣泛,除數(shù)學(xué)計(jì)算和分析外,還被廣泛用于自動(dòng)控制、系統(tǒng)仿真、數(shù)字信號(hào)處理、圖形圖像分析、數(shù)理統(tǒng)計(jì)、人工智能、虛擬現(xiàn)實(shí)技術(shù)、通信工程、金融系統(tǒng)等領(lǐng)域。為了提高程序運(yùn)行效率,能使用矩陣方法處理的數(shù)據(jù)盡量用矩陣方法處理,畢竟矩陣處理是Matlab的強(qiáng)項(xiàng)。某些不能用矩陣處理,可設(shè)法構(gòu)造出可以運(yùn)算的矩陣。當(dāng)不是很確定某個(gè)函數(shù)的用法和功能時(shí),除了使用help或demo外,更方便更直接的方法就是自己構(gòu)造一些簡(jiǎn)單數(shù)據(jù)試用一下函數(shù)。當(dāng)使用矩陣運(yùn)算時(shí),直接看代碼不是很容易理解,可把矩陣簡(jiǎn)單的寫(xiě)在草稿紙上,包括初始矩陣和矩陣的變換結(jié)果,然后借助

19、草稿紙上直觀的矩陣運(yùn)算理解整個(gè)表達(dá)式的意義。設(shè)置斷點(diǎn)。設(shè)置斷點(diǎn)最主要的目的就是查看中間變量的值,從中了解整個(gè)程序的運(yùn)算過(guò)程。最主要也是最基本的就是對(duì)算法的正確理解,理解算法的原理和算法每一步的意義;當(dāng)理解每一步的意義后,同樣的目的可采用不同的方法進(jìn)行處理。有時(shí)可以通過(guò)畫(huà)圖來(lái)幫助感性的了解數(shù)據(jù),這樣處理的時(shí)候不會(huì)太盲目。畫(huà)圖是Matlab又一強(qiáng)項(xiàng)。MATLAB所具有的強(qiáng)大的功能可以使我們解決很多用其他計(jì)算機(jī)語(yǔ)言不容易解決的問(wèn)題。MATLAB提供了一系列的繪圖函數(shù),用戶不僅不許考慮繪圖細(xì)節(jié),只需給出一些基本的參數(shù)就能得到所需要的圖形,這一類(lèi)函數(shù)稱為高層繪圖函數(shù),這學(xué)期學(xué)習(xí)讓我感受頗多,這門(mén)語(yǔ)言相對(duì)

溫馨提示

  • 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)論