




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
電子信息工程系第五講計(jì)算可視化與GUI設(shè)計(jì)
Matlab基礎(chǔ)應(yīng)用1一.計(jì)算的可視化MATLAB具有強(qiáng)大的二維和三維繪圖功能,尤其擅長(zhǎng)于各種科學(xué)計(jì)算結(jié)果的可視化。計(jì)算的可視化可以將雜亂的數(shù)據(jù)通過(guò)圖形來(lái)表示,從中觀察出其內(nèi)在的聯(lián)系。二維曲線的繪制三維圖形的繪制圖形窗口的功能21繪制曲線或曲面的一般步驟步驟內(nèi)容1曲線或曲面的數(shù)據(jù)準(zhǔn)備:對(duì)于二維曲線,橫坐標(biāo)和縱坐標(biāo)數(shù)據(jù)(x,y);對(duì)于三維曲面,矩陣參變量和對(duì)應(yīng)的函數(shù)值(x,y,z)。
2
指定圖形窗口和子圖位置:默認(rèn)時(shí),打開FigureNo.1窗口或當(dāng)前窗口、當(dāng)前子圖;也可以打開指定的圖形窗口和子圖。3設(shè)置曲線的繪制方式:線型、色彩、數(shù)據(jù)點(diǎn)形。4
繪制曲線(plot,plot3)或曲面(mesh,surf)5設(shè)置坐標(biāo)軸:坐標(biāo)的范圍、刻度和坐標(biāo)分格線5
圖形注釋:圖名、坐標(biāo)名、圖例、文字說(shuō)明6
著色、明暗、燈光、材質(zhì)處理(僅對(duì)三維圖形使用)7視點(diǎn)、三度(橫、縱、高)比(僅對(duì)三維圖形使用)8圖形的精細(xì)修飾(圖形句柄操作):利用對(duì)象屬性值設(shè)置;利用圖形窗口工具條進(jìn)行設(shè)置。
!
!32.2曲線的線型、顏色和數(shù)據(jù)點(diǎn)形語(yǔ)法:plot(x,y,’s’)說(shuō)明:s為類型說(shuō)明字符串參數(shù)。它可以是線段類型、顏色和數(shù)據(jù)點(diǎn)形3種類型符號(hào)的組合。顏色數(shù)據(jù)點(diǎn)間連線數(shù)據(jù)點(diǎn)形類型符號(hào)類型符號(hào)類型符號(hào)黃色品紅色(紫色)青色紅色綠色藍(lán)色白色黑色y(Yellow)m(Magenta)c(Cyan)r(Red)g(Green)b(Blue)w(White)k(Black)實(shí)線(默認(rèn))點(diǎn)線點(diǎn)劃線虛線-:-.--實(shí)點(diǎn)標(biāo)記圓圈標(biāo)記叉號(hào)形×十字形+星號(hào)標(biāo)記*方塊標(biāo)記□鉆石形標(biāo)記
向下的三角形標(biāo)記向上的三角形標(biāo)記向左的三角形標(biāo)記向右的三角形標(biāo)記五角星標(biāo)記☆六連形標(biāo)記.ox+*sdv^<>ph52.3多個(gè)圖形繪制的方法指定圖形窗口語(yǔ)法:figure(n)%產(chǎn)生新圖形窗口說(shuō)明:如果該窗口不存在,則產(chǎn)生新圖形窗口并設(shè)置為當(dāng)前窗口。同一窗口多個(gè)子圖語(yǔ)法:subplot(mnk)%使子圖中的第k幅成為當(dāng)前圖說(shuō)明:將圖形窗口劃分為m*n幅子圖,k是當(dāng)前子圖編號(hào)。同一窗口多次疊繪語(yǔ)法:holdon%使當(dāng)前坐標(biāo)系和圖形保留
holdoff%使當(dāng)前坐標(biāo)系和圖形不保留62.4設(shè)置坐標(biāo)軸和文字標(biāo)注坐標(biāo)軸控制分格線語(yǔ)法:gridon/off%顯示/不顯示分格線說(shuō)明:不顯示分格線是默認(rèn)設(shè)置,分格線疏密由坐標(biāo)刻度決定。命令含義命令含義axisauto使用默認(rèn)設(shè)置axis([xmin,xmax,ymin,ymax])設(shè)定坐標(biāo)范圍,必須滿足xmin<xmax,ymin<ymax,可以取inf或-infaxisoff取消軸背景axisimage縱、橫軸采用等長(zhǎng)刻度,且坐標(biāo)框緊貼數(shù)據(jù)范圍axison使用軸背景axisij矩陣式坐標(biāo),原點(diǎn)在左上方axissquare產(chǎn)生正方形坐標(biāo)系axisxy普通直角坐標(biāo),原點(diǎn)在左下方axisequal縱橫軸采用等長(zhǎng)刻度axistight把數(shù)據(jù)范圍直接設(shè)為坐標(biāo)范圍axisvis3d保持高寬比不變,用于三維旋轉(zhuǎn)時(shí)避免圖形大小變化72.4設(shè)置坐標(biāo)軸和文字標(biāo)注(續(xù))文字標(biāo)注(1)添加圖名語(yǔ)法:title(‘s’)%書寫圖名(2)添加坐標(biāo)軸名語(yǔ)法:xlabel(‘s’)%橫坐標(biāo)軸名
ylabel(‘s’)%縱坐標(biāo)軸名(3)添加圖例語(yǔ)法:legend(‘s’,pos)%在pos指定位置添加圖例注釋s(4)添加文字注釋語(yǔ)法:text(xt,yt,’s’)%在(xt,yt)坐標(biāo)處添文字注釋。83三維圖形繪制3.1繪制三維曲線命令語(yǔ)法:plot3(x,y,z,’s’)plot3(x1,y1,z1,’s1’,x2,y2,z2,’s2’,…)說(shuō)明:x,y,z是同維向量時(shí),繪制x,y,z為坐標(biāo)的三維曲線;x,y,z為同維矩陣時(shí),繪制三維曲線的條數(shù)等于矩陣的列數(shù)。‘s’是指定線型、色彩、數(shù)據(jù)點(diǎn)形的字符串。例:>>x=0:0.1:20*pi;>>plot3(x,sin(x),cos(x))%按系統(tǒng)默認(rèn)設(shè)置繪圖103.2繪制三維網(wǎng)線圖和曲面圖三維網(wǎng)線圖與曲面圖是三維立體圖,MATLAB中提供了mesh和surf命令來(lái)繪制。在數(shù)據(jù)準(zhǔn)備上需要使用meshgrid命令構(gòu)成xy平面上的自變量柵格點(diǎn)矩陣。產(chǎn)生以x,y向量為基準(zhǔn),x-y平面柵格點(diǎn)坐標(biāo)值的矩陣語(yǔ)法:[xx,yy]=meshgrid(x,y)三維網(wǎng)線圖語(yǔ)法:mesh(xx,yy,z)三維曲面圖語(yǔ)法:surf(xx,yy,z)例2:>>x=linspace(-3,3,49);>>y=linspace(-3,3,49);>>[x1,y1]=meshgrid(x,y);>>z=3*(1-x1).^2.*exp(-(x1.^2)-(y1+1).^2)>>subplot(2,2,1);mesh(x1);title(‘x1fig’)>>subplot(2,2,2);mesh(y1);title(‘y1fig’)>>subplot(2,2,3);mesh(x1,y1,z);title(‘meshfig’)>>subplot(2,2,4);surf(x1,y1,z);title(‘surffig’)113.4色彩的控制色彩表現(xiàn)在圖形中非常重要,MATLAB中非常重視色彩的處理,它提供了豐富的色彩控制命令,同學(xué)們課下自學(xué)。色圖色圖的顯示和處理如:濃淡處理、亮度處理等。134特殊圖形繪制圖形繪制函數(shù)功能說(shuō)明條形圖bar,barh,bar3,barsh繪制垂直條形圖、水平條形圖三維垂直條形圖、三維水平條形圖面積圖area(x,y)y可以是矩陣和向量實(shí)心圖fill(x,y,c)c為實(shí)心圖的顏色直方圖hist(y,m)統(tǒng)計(jì)每段元素的個(gè)數(shù)并畫圖餅形圖pie(x,explode,’label’)pie3(x,explode,’label’)畫二維餅形圖畫三維餅形圖離散數(shù)據(jù)圖stem,stairs,scatterstem繪制離散點(diǎn)的火柴桿圖;stairs繪制階梯圖;scatter繪制離散點(diǎn)圖。對(duì)數(shù)坐標(biāo)圖semilogx,semilogy,LoglogSemilogx\semilogy繪制x/y為對(duì)數(shù)坐標(biāo)的曲線。極坐標(biāo)圖ploar(th,rad,’參數(shù)’)th為相角,rad為離原點(diǎn)的距離等高線圖contour(x,y,z,n)contour3(x,y,z,n)繪制二維等高線圖,n為等高線條數(shù)繪制三維等高線圖,n為等高線條數(shù)復(fù)向量圖compassfeathercompass繪制羅盤圖feather繪制羽毛圖145圖形窗口的功能添加箭頭添加直線添加文字圖形對(duì)象編輯放大縮小三維圖形旋轉(zhuǎn)Edit菜單insert菜單15實(shí)現(xiàn)GUI程序包括兩個(gè)基本任務(wù)GUI界面的設(shè)計(jì):即GUI的組件布局;GUI組件的編程:編寫各組件的響應(yīng)函數(shù)(回調(diào)函數(shù))除此之外,GUI程序也可能需要保存發(fā)布,使開發(fā)的程序真正得到應(yīng)用。MATLAB提供了開發(fā)GUI程序的集成開發(fā)環(huán)境——GUIDE,簡(jiǎn)化設(shè)計(jì)流程。在利用GUIDE編寫程序時(shí),該開發(fā)環(huán)境為用戶生成兩個(gè)文件。FIG文件:該文件包括用戶GUI界面的所有組件對(duì)象(含圖形窗口)及對(duì)象的屬性。M文件:該文件包括用戶所編寫的所有的響應(yīng)函數(shù)(回調(diào)函數(shù)),或用戶定義的子函數(shù)。其不包含任何組件的布局信息。MATLAB的GUI程序的核心就是句柄圖形對(duì)象的應(yīng)用,對(duì)句柄圖形對(duì)象的充分了解使GUI程序編寫更加容易。1GUI程序設(shè)計(jì)要點(diǎn)172句柄圖形對(duì)象句柄標(biāo)示回調(diào)函數(shù)事件響應(yīng)
對(duì)象MATLAB是一種面向?qū)ο蟮母呒?jí)語(yǔ)言,其數(shù)據(jù)的可視化技術(shù)中的各種圖形元素,都是抽象的圖形對(duì)象的實(shí)例。將一個(gè)圖形的每個(gè)組件都看作一個(gè)對(duì)象,每個(gè)對(duì)象都有一獨(dú)一無(wú)二的句柄(Handle),句柄是存取圖形對(duì)象唯一標(biāo)示。屬性特征18句柄圖形體系由若干個(gè)圖形對(duì)象組成:root(屏幕)figure(窗口)uicontrol(界面控件)axes(軸)uimenu(界面菜單)2.1句柄圖形體系
內(nèi)核對(duì)象父子關(guān)系兄弟關(guān)系line(線條)surface(表面)rectangle(矩形)patch(貼片)image(圖像)text(文字)light(光源)按鈕(PushButton)編輯框(Edit)框架(frame)列表框(ListBox)組合框(PopupMenu)復(fù)選框(CheckBox)單選框(RadioBotton)文本(StaticText)滾動(dòng)條(Slider)19對(duì)象句柄的獲?。?)當(dāng)前對(duì)象的獲取語(yǔ)法:gcf%獲取當(dāng)前圖形窗口句柄 gca%獲取當(dāng)前坐標(biāo)軸句柄
gco%獲取被鼠標(biāo)最近單擊對(duì)象的句柄。(2)查找對(duì)象語(yǔ)法:findobj%查找對(duì)象,獲取指定屬性值的對(duì)象句柄。(3)追溯父對(duì)象和子對(duì)象句柄語(yǔ)法:get%獲取已知對(duì)象句柄的父/子對(duì)象句柄。2.2句柄圖形對(duì)象的操作(續(xù))21對(duì)象句柄的刪除語(yǔ)法:delete(h_obj)%刪除句柄對(duì)象和所有子對(duì)象。圖形對(duì)象屬性(property)的獲取和設(shè)置(1)創(chuàng)建對(duì)象時(shí)設(shè)置屬性如:h_fig=figure('color','red','menubar','none','position',[0,0,300,300])(2)用get函數(shù)獲取屬性值語(yǔ)法:C=get(h_obj,’propertyName’,’…’)%獲取句柄對(duì)象某屬性的當(dāng)前值(3)用set函數(shù)設(shè)置屬性值語(yǔ)法:set(h_obj,’propertyName’,Value,’…’)%設(shè)置句柄對(duì)象屬性值2.2句柄圖形對(duì)象的操作(續(xù))222.3句柄圖形對(duì)象的操作函數(shù)函數(shù)功能set(handle,’PropertyName’,Value)設(shè)置對(duì)象屬性get(handle,’PropertyName’)獲取對(duì)象屬性reset(handle)將對(duì)象屬性重設(shè)置為默認(rèn)值delete(handle)刪除一個(gè)對(duì)象和它所有的子對(duì)象gcf獲取當(dāng)前圖形窗口的句柄gca獲取當(dāng)前坐標(biāo)軸的句柄gco獲取當(dāng)前對(duì)象的句柄Findobj(‘PropertyName’,Value)獲取具有指定屬性值的對(duì)象的句柄Waitforbuttonpress等待鍵盤或鼠標(biāo)按鍵在圖形中按下figure(‘PropertyName’,Value)創(chuàng)建圖形對(duì)象axes(‘PropertyName’,Value)創(chuàng)建坐標(biāo)軸對(duì)象line(X,Y,‘PropertyName’,Value)創(chuàng)建線條對(duì)象retangle(‘PropertyName’,Value)創(chuàng)建矩形對(duì)象text(X,Y,S,‘PropertyName’,Value)創(chuàng)建文本對(duì)象patch(X,Y,C,‘PropertyName’,Value)創(chuàng)建片塊對(duì)象surface(X,Y,Z,’PropertyName’,Value)創(chuàng)建表面對(duì)象light(’PropertyName’,Value)創(chuàng)建光源對(duì)象image(C,’PropertyName’,Value)創(chuàng)建圖像對(duì)象233.1圖形用戶界面(GUI)組成圖形窗口(figure)菜單(uimenu)控件(uicontrol)按鈕選單按鈕框架復(fù)選框文本標(biāo)簽文本編輯框滑動(dòng)條下拉列表框列表框單選按鈕坐標(biāo)軸控件(axes)回調(diào)函數(shù)(callback)下面介紹的是可視化GUI開發(fā)環(huán)境的應(yīng)用。253.2可視化GUI開發(fā)環(huán)境激活圖形圖形對(duì)象面板界面編輯面板對(duì)象瀏覽器屬性編輯器菜單編輯器對(duì)象對(duì)齊工具可視化界面環(huán)境263.3.3菜單的回調(diào)函數(shù)(callback)回調(diào)函數(shù)是字符串,可包含任何MATLAB的命令和M文件名,回調(diào)的作用是將字符串用“eval”執(zhí)行,以實(shí)現(xiàn)選單的功能。每個(gè)菜單項(xiàng)都會(huì)有一個(gè)回調(diào)函數(shù),用于用戶選中菜單項(xiàng)而進(jìn)行的響應(yīng)。293.4控件的使用控件是界面組成的重要部分。MATLAB常用控件如下表。在“圖形對(duì)象面板”中選中控件,拖放到“界面編輯面板”中??丶鸆ontrolName功能按鈕PushButton最常用的控件,用于響應(yīng)用戶鼠標(biāo)單擊,按鈕上有說(shuō)明文字說(shuō)明其作用。單選按鈕RadioButton當(dāng)單擊時(shí)會(huì)用黑白點(diǎn)切換,總是成組出現(xiàn),多個(gè)單選按鈕互斥,一組中只有一個(gè)被選中。復(fù)選框CheckBox當(dāng)單擊時(shí)會(huì)用√切換,有選中、不選中和不確定等狀態(tài),總是成組出現(xiàn),多個(gè)復(fù)選框可同時(shí)選用。編輯框EditText凹形方框,可隨意輸入和編輯單行和多行文字,并顯示出來(lái)。文本框StaticText用于顯示文字信息,但不接受輸入。滾動(dòng)條Slider可以用圖示的方式顯示在一個(gè)范圍內(nèi)數(shù)值的大概值范圍,用戶可以移動(dòng)滾動(dòng)條改變數(shù)值??蚣蹻rame將一組控件圍在框架中,用于裝飾界面。列表框ListBox顯示下拉文字列表,用戶可以從列表中選擇一項(xiàng)和多項(xiàng)。下拉列表PopupMenu相當(dāng)于文本框和列表框的組合,用戶可以從下拉列表中選擇。坐標(biāo)軸Axes用于繪制坐標(biāo)軸。303.4.1控件的屬性創(chuàng)建控件后,需要對(duì)屬性進(jìn)行設(shè)置,常用屬性如下。1)string屬性:用于顯示在控件上的字符串。2)enable屬性:表示該控件是否有效。3)tooltipstring屬性:當(dāng)鼠標(biāo)放在控件上時(shí)顯示的提示信息。4)字體屬性:包括fontname,fontsize等5)Tag屬性:控件的標(biāo)記,用于標(biāo)示控件。屬性編輯器通過(guò)選擇菜單“View”-〉”PropertyInspector”打開,或選中控件單擊工具欄中的。圖屬性編輯器圖各種控件的顯示313.4.2控件回調(diào)函數(shù)每個(gè)控件的回調(diào)函數(shù)可能有多個(gè),用于響應(yīng)不同的操作事件。實(shí)現(xiàn)GUI程序,基本的機(jī)制就是對(duì)控件的回調(diào)函數(shù)編程。如創(chuàng)建一個(gè)“PushButton”控件后,在菜單“View->ObjectCallbacks”中就會(huì)出現(xiàn)如下五個(gè)函數(shù)。ButtonDownFcn:當(dāng)鼠標(biāo)右鍵單擊控件時(shí)執(zhí)行的函數(shù)。Callback:與控件相關(guān)的標(biāo)準(zhǔn)回調(diào)函數(shù),實(shí)現(xiàn)的功能因控件的不同而不同。CreateFcn:當(dāng)創(chuàng)建對(duì)象時(shí)執(zhí)行的函數(shù)。DeleteFcn:當(dāng)刪除對(duì)象時(shí)執(zhí)行的函數(shù)。KeyPressFcn:當(dāng)鍵盤按下時(shí)執(zhí)行的函數(shù)。選擇各函數(shù),打開M文件編輯器,出現(xiàn)相關(guān)函數(shù)名的程序,在各函數(shù)中編寫程序代碼,完成各回調(diào)功能。
溫馨提示
- 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)價(jià)體系改革計(jì)劃
- 提升工作效率的年度改進(jìn)措施計(jì)劃
- 跨國(guó)企業(yè)研發(fā)過(guò)程中的保密管理實(shí)踐
- 2025全屋智能主機(jī)
- 河南省駐馬店市重點(diǎn)高中2024-2025學(xué)年高二上學(xué)期1月期末模擬生物試題含答案
- 跨區(qū)域?qū)W校合作教育創(chuàng)新與發(fā)展新動(dòng)力
- 跨文化背景下的自我管理能力培養(yǎng)
- 遠(yuǎn)程醫(yī)療中的蔬菜水果減肥法服務(wù)
- 跨境電商物流安全保障機(jī)制探討
- 跨領(lǐng)域合作下的藝術(shù)教育與創(chuàng)新思維教育
- 2023年高考真題-化學(xué)(福建卷) 含解析
- 欄桿拆除及更換施工方案
- 10我們愛和平(第1課時(shí))(說(shuō)課稿)2023-2024學(xué)年統(tǒng)編版道德與法治六年級(jí)下冊(cè)
- 《國(guó)際貿(mào)易實(shí)務(wù)(英文版)》(英文課件) -Ch 6 International Cargo Transport-Ch 11 Cross-border Commerce
- 新條令.新亮點(diǎn)-內(nèi)務(wù)條令解讀
- 中醫(yī)適宜技術(shù)-中藥熱奄包
- 林海雪原課件6張
- 銀發(fā)經(jīng)濟(jì)產(chǎn)業(yè)發(fā)展規(guī)劃
- 防火涂料質(zhì)量保證書
- 礦產(chǎn)資源開發(fā)合同備忘錄范本
- 大模型在刑偵技術(shù)中的應(yīng)用探索
評(píng)論
0/150
提交評(píng)論