再別康橋朗誦背景綜述_第1頁(yè)
再別康橋朗誦背景綜述_第2頁(yè)
再別康橋朗誦背景綜述_第3頁(yè)
再別康橋朗誦背景綜述_第4頁(yè)
再別康橋朗誦背景綜述_第5頁(yè)
已閱讀5頁(yè),還剩79頁(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的圖形功能

(1)掌握?qǐng)D形窗口的創(chuàng)建與控制,以及圖形窗口的基本操作;(2)熟練掌握二維和三維繪圖基本的命令、著色、線型控制;(3)初步掌握用特殊的圖形來(lái)表現(xiàn)特殊數(shù)據(jù)的性質(zhì),如面積圖、直方圖、餅圖等。(4)了解在極坐標(biāo)、柱坐標(biāo)和球坐標(biāo)系下繪制圖形。(5)掌握坐標(biāo)軸的控制和圖形標(biāo)注命令及其用法。(6)了解句柄圖形的概念和圖形對(duì)象的結(jié)構(gòu)層次、掌握?qǐng)D形對(duì)象屬性的獲取及利用圖形對(duì)象屬性編輯器設(shè)置對(duì)象屬性的方法。(7)掌握用GUI設(shè)計(jì)用戶界面菜單對(duì)象和用戶界面控制對(duì)象的方法。..第4章Matlab的圖形功能(1)掌握?qǐng)D形窗口的創(chuàng)建1一、圖形窗口創(chuàng)建圖形窗口的命令為figure,有兩種調(diào)用格式:figure/figure(n)也可以由菜單創(chuàng)建:File->New->Figure圖形窗口的操作及控制第4章Matlab的圖形功能

>>figure(1)>>x=0:0.1:1;>>y=sin(x);>>plot(x,y)..一、圖形窗口第4章Matlab的圖形功能>>figu2第4章Matlab的圖形功能

二、二維平面圖形與坐標(biāo)系

1.幾個(gè)基本的繪圖命令

a.線性坐標(biāo)曲線

plot

函數(shù)命令plot是MATLAB二維曲線繪圖中最簡(jiǎn)單、最重要、使用最廣泛的一個(gè)線性繪圖函數(shù)。它可以生成線段、曲線和參數(shù)方程曲線的函數(shù)圖形。

命令格式:

plot(y):單參數(shù)式(y為縱坐標(biāo)向量,橫坐標(biāo)為向量[1234…])

plot(x,y):參數(shù)式(x為橫坐標(biāo)向量,y為縱坐標(biāo)向量)

plot(Y):m×n矩陣式(矩陣的每列為縱坐標(biāo),橫坐標(biāo)為向量[1:m])plot(X,Y):混合式

plot(Z):復(fù)向量式

plot(x1,y1,x2,y2,…):綜合調(diào)用方式

..第4章Matlab的圖形功能二、二維平面圖形與坐標(biāo)系3第4章Matlab的圖形功能

用命令plot(y)繪曲線,其中y=[5349023]。

y=[5349023];plot(y)用命令plot(x,y)繪制函數(shù)y=cos(x)在兩個(gè)周期內(nèi)的圖形。

x=0:0.01:2*pi;y=cos(x);plot(x,y)在同一圖形窗口中用命令plot(x,y)繪出正弦余弦函數(shù)的圖形。

x=0:0.01:2*pi;y=[sin(x);cos(x)];plot(x,y)用命令plot(Y)繪制矩陣Y=[5438910;344582;81213211825;988967]的圖形。Y=[5438910;344582;81213211825;988967];plot(Y)..第4章Matlab的圖形功能用命令plot(y)繪4第4章Matlab的圖形功能

在混合式的命令格式plot(X,Y)中,對(duì)X和Y而言,可分下列幾種情況:◆如果X和Y都是向量,則長(zhǎng)度必須相等;◆如果X是向量,而Y是一個(gè)矩陣,X的長(zhǎng)度與矩陣Y的行數(shù)或列數(shù)相等,則它的作用是將向量X與矩陣Y的每列或每行的向量相對(duì)應(yīng)作折(曲)線,當(dāng)Y是方陣時(shí),則將向量X與矩陣Y的列向量對(duì)應(yīng)作圖;◆如果X是矩陣,Y是向量,Y的長(zhǎng)度等于矩陣X的行數(shù)或列數(shù),則將X的每列或每行的向量與Y相對(duì)應(yīng)作圖。當(dāng)X是方陣時(shí),則將X的各列與Y對(duì)應(yīng)作圖;◆如果X和Y都是矩陣,且維數(shù)相同,則按列與列的對(duì)應(yīng)方式來(lái)作圖。..第4章Matlab的圖形功能在混合式的命令格5第4章Matlab的圖形功能

用命令plot(X,Y)繪制圖形。x=1:length(peaks);plot(x,peaks)注意:>>peaksz=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)

..第4章Matlab的圖形功能用命令plot(X,Y)6第4章Matlab的圖形功能

用plot(Z)繪制圖形。x=0:pi/20:2*pi;Z=sin(x)+cos(x)*iplot(Z)等價(jià)于plot(real(Z),imag(Z))

用plot(x1,y1,x2,y2,…)在同一窗口中繪制多條曲線,且坐標(biāo)和長(zhǎng)度都不同。

t1=0:0.1:3*pi;t2=0:0.1:6;plot(t1,sin(t1),t2,sqrt(t2))..第4章Matlab的圖形功能用plot(Z)繪制圖形7第4章Matlab的圖形功能

b.二維函數(shù)曲線專用命令

fplot用plot繪圖在確定自變量的取值間隔時(shí),一般采用平均間隔,有時(shí)會(huì)因某處間距太大,而不能反映出函數(shù)的變化情況。fplot是繪制函數(shù)y=f(x)圖形的專用命令,它的數(shù)據(jù)點(diǎn)是自適應(yīng)產(chǎn)生的,對(duì)那些導(dǎo)數(shù)變化較大的函數(shù),用fplot函數(shù)繪出的曲線比等分取點(diǎn)所畫出的曲線更加接近真實(shí)。fplot函數(shù)命令的調(diào)用格式為:

[X,Y]=fplot(fun,lims,tol,n,‘linespec’,p1,p2…)fun:函數(shù)名字符串;lims:定義x的取值區(qū)間,lims=[xmin,xmax];tol:相對(duì)誤差(默認(rèn)值為2e-3);n:繪圖的最少點(diǎn)數(shù)(n+1);

‘linespec’:線性設(shè)置;p1,p2,…:函數(shù)傳遞參數(shù);

X,Y:數(shù)組數(shù)據(jù)點(diǎn)坐標(biāo)。..第4章Matlab的圖形功能b.二維函數(shù)曲線專用命令8第4章Matlab的圖形功能

fplot和plot命令的比較。

(1)創(chuàng)建函數(shù)M文件funfplot。

functiony=funfplot(x)y=sin(1./tan(pi.*x));(2)將用fplot命令求得的坐標(biāo)點(diǎn)按照對(duì)應(yīng)大小創(chuàng)建一個(gè)等間距坐標(biāo)點(diǎn)賦值給矩陣X,Y。[X,Y]=fplot('funfplot',[-0.1,0.1],2e-4);%只把數(shù)據(jù)點(diǎn)坐標(biāo)輸入X、Y,而不顯示圖形。%要使用tol、n或是’linespec’的默認(rèn)參數(shù),可以給函數(shù)傳遞一個(gè)[]作為參數(shù)。x=-0.1:1/1000*pi:0.1;y=funfplot(x);(3)用plot和fplot命令作圖,比較二者的不同:plot(x,y)figure(2)%打開一個(gè)新的圖形窗口plot(X,Y)%該命令等價(jià)于

fplot(’funfplot’,[-0.1,0.1],2e-4);

..第4章Matlab的圖形功能fplot和plot9第4章Matlab的圖形功能

c.對(duì)數(shù)坐標(biāo)曲線命令

繪制二維對(duì)數(shù)坐標(biāo)曲線的命令semilogx、semilogy和loglog,其用法和函數(shù)plot相同。函數(shù)semilogx橫坐標(biāo)為對(duì)數(shù)坐標(biāo);函數(shù)semilogy縱坐標(biāo)為對(duì)數(shù)坐標(biāo);函數(shù)loglog橫、縱坐標(biāo)均為對(duì)數(shù)坐標(biāo)。繪制正弦函數(shù)的對(duì)數(shù)坐標(biāo)曲線。t=0.1:0.1:3*pi;y=sin(t);figure(1)

semilogx(t,y)gridon%為圖形窗口添加網(wǎng)格

figure(2)semilogy(t,y)figure(3)loglog(t,y)

..第4章Matlab的圖形功能c.對(duì)數(shù)坐標(biāo)曲線命令.10第4章Matlab的圖形功能

d.雙y軸圖形

繪制左右均有y軸的圖形

plotyy(x1,y1,x2,y2)在窗口中同時(shí)繪制兩條曲線:(x1,y1)和(x2,y2),曲線(x1,y1)用左側(cè)的y軸,曲線(x2,y2)用右側(cè)的y

軸。

plotyy(x1,y1,x2,y2,‘fun’)

’fun’是字符串,用來(lái)指定繪圖的函數(shù)名,如plot、semilogx、semilogy等。plotyy(z1,y1,x2,y2,‘fun1’,‘fun2’)用’fun1’和’fun2’指定不同的繪圖函數(shù)分別繪制。用

plotyy函數(shù)繪制雙y軸圖形。

t1=0:0.1:3*pi;t2=0:0.1:6;y1=sin(t1);y2=sqrt(t2);plotyy(t1,y1,t2,y2,'semilogx')gridon..第4章Matlab的圖形功能d.雙y軸圖形..11第4章Matlab的圖形功能

在同一圖形窗口中用不同的繪圖函數(shù)繪制同一函數(shù)曲線的雙y軸圖形。

x=0:0.1:6;y=sqrt(x);plotyy(x,y,x,y,’semilogy’,’plot’)

plotyy函數(shù)不能加入設(shè)置曲線線型、顏色及標(biāo)出數(shù)據(jù)點(diǎn)的參數(shù)。

..第4章Matlab的圖形功能在同一圖形窗口中用不同的12第4章Matlab的圖形功能

2.線型和顏色

plot函數(shù)可以設(shè)置曲線的線段類型、定點(diǎn)標(biāo)記和線段顏色。

常用的線段、顏色與定點(diǎn)標(biāo)記參數(shù)..第4章Matlab的圖形功能2.線型和顏色常用的13調(diào)用格式:plot(x,y,s),s為類型說(shuō)明參數(shù),是字符串。s字符串可以是三種類型的符號(hào)之一,也可以是線型與顏色和定點(diǎn)標(biāo)記與顏色的組合;如果沒(méi)有s參數(shù),plot將使用缺省設(shè)置(實(shí)線,前七種顏色順序著色)繪制曲線;在當(dāng)前坐標(biāo)系中繪圖時(shí),每調(diào)入一次繪圖函數(shù),MATLAB將擦掉坐標(biāo)系中已有的圖形對(duì)象??梢杂胔oldon命令在一個(gè)坐標(biāo)系中增加新的圖形對(duì)象。注意MATLAB會(huì)根據(jù)新圖形的大小,重新改變坐標(biāo)系的比例。用不同的線型和標(biāo)注來(lái)繪制兩條曲線。t1=0:0.1:2*pi;t2=0:0.1:6;y1=sin(t1);y2=sqrt(t2);plot(t1,y1,':hb',t2,y2,'--g')

第4章Matlab的圖形功能

..調(diào)用格式:plot(x,y,s),s為類型說(shuō)明參數(shù),是字14第4章Matlab的圖形功能

3.圖形窗口的分割

有時(shí)需要在一個(gè)圖形窗口中顯示幾幅圖,以便對(duì)幾個(gè)函數(shù)進(jìn)行直觀、便捷的比較。由于每個(gè)繪圖命令在繪制數(shù)據(jù)圖像時(shí)都會(huì)將已有圖形覆蓋掉,而用hold命令不能實(shí)現(xiàn)同時(shí)顯示幾個(gè)不同坐標(biāo)尺寸下的圖形,用figure命令再創(chuàng)窗口又很難同時(shí)比較由不同的數(shù)據(jù)繪得的圖像。實(shí)現(xiàn)在同一個(gè)窗口中同時(shí)顯示多個(gè)圖像的命令subplot。使用格式為:subplot(m,n,i)其含義為:把圖形窗口分割為m行n列子窗口,然后選定第i個(gè)窗口為當(dāng)前窗口。subplot命令不僅用于二維圖形,對(duì)三維圖形一樣適用。其本質(zhì)是將figure窗口分為幾個(gè)區(qū)域,再在每個(gè)區(qū)域內(nèi)分別繪圖。..第4章Matlab的圖形功能3.圖形窗口的分割.15第4章Matlab的圖形功能

用subplot函數(shù)把兩種不同的圖形綜合在一個(gè)圖形窗口中。subplot(2,2,1)t=0.1:0.1:2*pi;y=sin(t);semilogx(t,y)gridonsubplot(2,2,2)t=0:0.1:4*pi;y=sin(t);plot(t,y)subplot(2,2,3)x=1:0.01:5;y=exp(x);plotyy(x,y,x,y,’semilogx’,’plot’)subplot(2,2,4)x=1:0.1:10;y=sqrt(x);plot(x,y,’:rd’)..第4章Matlab的圖形功能用subplot函數(shù)16第4章Matlab的圖形功能

4.坐標(biāo)系的調(diào)整

實(shí)現(xiàn)坐標(biāo)系的調(diào)整的命令是

axis函數(shù)。

調(diào)用格式為:axis([xmin,xmax,ymin,ymax,zmin,zmax])坐標(biāo)的最小值(xmin,ymin,zmin)必須小于相應(yīng)的最大值(xmax,ymax,zmax),否則會(huì)出錯(cuò)。自動(dòng)坐標(biāo)系與用

axis函數(shù)調(diào)整后的坐標(biāo)系的比較。

subplot(2,1,1)t=0:0.1:4*pi;y=sin(t);plot(t,y)subplot(2,1,2)t=0:0.1:4*pi;y=sin(t);plot(t,y)axis([0,max(t),min(y),max(y)])

..第4章Matlab的圖形功能4.坐標(biāo)系的調(diào)整..17第4章Matlab的圖形功能

三、三維繪圖

1.三維曲線繪圖命令

三維函數(shù)plot3主要用來(lái)表現(xiàn)單參數(shù)的三維曲線,與二維繪圖函數(shù)plot相比,只多了第三維數(shù)據(jù)。其調(diào)用格式為:plot3(X1,Y1,Z1,s1,X2,Y2,Z2,s2,…)或plot3(X,Y,Z,s)參數(shù)的含義如下:Xn、Yn、Zn:第一到三維數(shù)據(jù),是尺寸相等的向量/矩陣;s、s1、s2:是字符串,用來(lái)設(shè)置線型、顏色、數(shù)據(jù)點(diǎn)標(biāo)記。X、Y、Z是向量時(shí),繪制以向量X、Y、Z的元素為x、y、z坐標(biāo)的三維曲線。X、Y、Z是矩陣時(shí),以X、Y、Z對(duì)應(yīng)列元素為x、y、z坐標(biāo)分別繪制曲線。

..第4章Matlab的圖形功能三、三維繪圖..18第4章Matlab的圖形功能

x、y、z是向量時(shí),plot3命令的使用t=0:0.1:8*pi;plot3(sin(t),cos(t),t)title(’繪制螺旋線’)%用命令title對(duì)圖形主題進(jìn)行標(biāo)注

xlabel(’sin(t)’,’FontWeight’,’bold’,’FontAngle’,’italic’)ylabel(’cos(t)’,’FontWeight’,’bold’,’FontAngle’,’italic’)zlabel(’t’,’FontWeight’,’bold’,’FontAngle’,’italic’)

%命令zlabel用來(lái)指定z軸的數(shù)據(jù)名稱gridonx、y、z都是矩陣時(shí),plot3命令的使用[X,Y]=meshgrid(-pi:0.1:pi);Z=sin(X)+cos(Y);plot3(X,Y,Z)..第4章Matlab的圖形功能x、y、z是向量時(shí),p19第4章Matlab的圖形功能

2.三維曲面繪圖命令

為了繪制定義在平面區(qū)域D=[x0,xm]×[y0,yn]上的三維曲面z=f(x,y),首先將[x0,xm]在x方向分成m份,將[y0,yn]在y方向分成n份,由各劃點(diǎn)分別作平行于坐標(biāo)軸的直線,將區(qū)域D分成m×n個(gè)小矩形;對(duì)于每個(gè)小矩形,計(jì)算出網(wǎng)格點(diǎn)的函數(shù)值,決定出空間中四個(gè)頂點(diǎn)(xi,yi,f(xi,yi)),連接四個(gè)頂點(diǎn)得到一個(gè)空間的四邊形片;所有四邊形片連在一起構(gòu)成函數(shù)z=f(x,y)定義在區(qū)域D上的空間網(wǎng)格曲面。因此,三維曲面繪圖命令可分為平面網(wǎng)格點(diǎn)的生成、在平面網(wǎng)格基礎(chǔ)上繪制三維網(wǎng)格及對(duì)三維表面進(jìn)行處理三個(gè)步驟。..第4章Matlab的圖形功能2.三維曲面繪圖命令.20a.平面網(wǎng)格點(diǎn)的生成函數(shù)命令meshgrid用來(lái)生成x-y平面上的網(wǎng)格點(diǎn)矩陣。調(diào)用形式為:[X,Y]=meshgrid(x,y)[X,Y]=meshgrid(x)等價(jià)于[X,Y]=meshgrid(x,x)參數(shù)含義如下:x:是區(qū)間[x0,xm]上分劃的向量;y:是區(qū)間[y0,yn]上分劃的向量;X,Y:輸出變量矩陣,矩陣X的行向量都是向量x,矩陣Y的列向量都是向量y。函數(shù)meshgrid將由兩個(gè)向量決定的區(qū)域轉(zhuǎn)換為對(duì)應(yīng)的網(wǎng)格點(diǎn)矩陣。第4章Matlab的圖形功能

..a.平面網(wǎng)格點(diǎn)的生成第4章Matlab的圖形功能..21第4章Matlab的圖形功能

函數(shù),定義區(qū)域?yàn)閇-2,2]×[-2,2]。生成網(wǎng)格并計(jì)算其網(wǎng)格點(diǎn)上的函數(shù)值。[X,Y]=meshgrid(-2:2:2,-2:2:2);[X,Y]%將劃分結(jié)果輸出至矩陣

ans=-202-2-2-2-202000-202222Z=X.*exp(-X.^2-Y.^2);%計(jì)算網(wǎng)格點(diǎn)上的函數(shù)值賦予變量ZZ=-0.000700.0007-0.036600.0366-0.000700.0007..第4章Matlab的圖形功能函數(shù)22第4章Matlab的圖形功能

b.三維網(wǎng)格命令mesh利用函數(shù)mesh生成網(wǎng)格曲面。調(diào)用格式為:mesh(X,Y,Z,C):X、Y、Z、C是同維數(shù)的矩陣,X、Y、Z對(duì)應(yīng)空間上的網(wǎng)格點(diǎn),網(wǎng)格線顏色由C決定;mesh(X,Y,Z):相當(dāng)于上面的C=Z的情況;mesh(x,y,Z,C):x和y是向量,Z和C是同維數(shù)的矩陣,網(wǎng)格曲面的網(wǎng)格頂點(diǎn)是(x(j),y(i),Z(i,j)),網(wǎng)格線的顏色由矩陣C決定;mesh(x,y,Z):相當(dāng)于上面的C=Z的情況;mesh(Z,C):等價(jià)于mesh(x,y,Z,C),此時(shí)向量x=1:n,向量y=1:m;mesh(Z):相當(dāng)于上面的C=Z的情況mesh(...,’PropertyName’,PropertyValue,...):給函mesh設(shè)置曲面屬性。..第4章Matlab的圖形功能b.三維網(wǎng)格命令mes23第4章Matlab的圖形功能

用mesh命令繪制上例中的網(wǎng)格曲面。[X,Y]=meshgrid(-2:.2:2,-2:.2:2);Z=X.*exp(-X.^2-Y.^2);mesh(Z)與mesh相關(guān)的另外兩個(gè)函數(shù)是

meshc和

meshz,它們的調(diào)用形式與mesh相同。..第4章Matlab的圖形功能用mesh命令繪制上24meshc除生成網(wǎng)格曲面外,還在x-y平面上生成曲面的等高線圖形;meshz除生成與mesh相同的網(wǎng)格曲面外,還在曲面下面加上一個(gè)長(zhǎng)方體的臺(tái)柱。比較函數(shù)meshc和meshz。

[X,Y]=meshgrid(-2:.2:2,-2:.2:2);Z=X.*exp(-X.^2-Y.^2);Subplot(2,1,1)meshc(Z)subplot(2,1,2)meshz(Z)第4章Matlab的圖形功能

..meshc除生成網(wǎng)格曲面外,還在x-y平面上生成曲面的25第4章Matlab的圖形功能

c.三維表面命令surf函數(shù)surf可實(shí)現(xiàn)對(duì)網(wǎng)格曲面片進(jìn)行著色,將網(wǎng)格曲面轉(zhuǎn)化為實(shí)曲面。surf命令的調(diào)用格式與mesh相同。利用三維網(wǎng)格表面命令surf繪制圖形。

z=peaks;%繪制山峰的圖像,將函數(shù)值賦予變量z

surf(z)%對(duì)山峰的圖像進(jìn)行著色處理shadinginterp%函數(shù)shading改變著色方式

..第4章Matlab的圖形功能c.三維表面命令su26上機(jī)練習(xí)(7)

(1)按照的步長(zhǎng)間隔繪制函數(shù)在0≤x≤1時(shí)的曲線。(2)用圖形表示離散函數(shù),其中n為[0,12]的自然數(shù)。(3)分別采用、的步長(zhǎng),繪制連續(xù)調(diào)制波形的圖像。(4)給出一系列的a值,采用函數(shù)畫一組橢圓。..上機(jī)練習(xí)(7)(1)按照的步長(zhǎng)間隔27(5)用曲面圖命令surf表現(xiàn)函數(shù)的圖像。(6)繪制顏色為藍(lán)色,數(shù)據(jù)點(diǎn)用五角星標(biāo)識(shí)的下述函數(shù)在(0,5)上的虛線圖。上機(jī)習(xí)題(7)

..(5)用曲面圖命令surf表現(xiàn)函數(shù)28第4章Matlab的圖形功能

3.等高線圖形的繪制函數(shù)contour和contour3可繪制出二維和三維圖形的等高線。contour和contour3的調(diào)用方式相同,只是contour3要繪制相應(yīng)的z軸。contour調(diào)用方式:contour(Z):直接繪制矩陣Z的等高線;contour(X,Y,Z):用X和Y指定等高線的x、y坐標(biāo);contour(Z,n)和contour(X,Y,Z,n):繪制n條等高線;contour(Z,V)和contour(X,Y,Z,V):向量V的元素指定等高線的位置,該向量長(zhǎng)度length(V)對(duì)應(yīng)繪制的等高線條數(shù)。..第4章Matlab的圖形功能3.等高線圖形的繪制.29第4章Matlab的圖形功能

繪制高斯三維分布曲面的等高線及二維等高線。contour(peaks,30)%繪制二維山峰的等高線,等高線的條數(shù)為30contour3(peaks,20)%繪制三維山峰圖像的等高線,等高線的條數(shù)為20函數(shù)clabel標(biāo)注高度值,函數(shù)contourf繪制填充的二維等高線。

..第4章Matlab的圖形功能繪制高斯三維分布曲面的等304.三維視圖可視效果的控制三維圖形觀察點(diǎn)和視覺(jué)的控制view使用格式為:view(AZ,EL)和view([AZ,EL]):通過(guò)方位角AZ和俯視角EL設(shè)置觀察圖形的視點(diǎn)。view([XYZ]):通過(guò)直角坐標(biāo)系設(shè)置視點(diǎn);[AZ,EL]=view:返回當(dāng)前的方位角AZ和俯視角EL;view(T):用一個(gè)4×4的轉(zhuǎn)矩陣T來(lái)設(shè)置視角;T=view:返回當(dāng)前的4×4的轉(zhuǎn)矩陣。view(2):設(shè)置缺省的二維視角AZ=0,EL=90。view(3):設(shè)置缺省的三維視角AZ=-37.5,EL=30。三維圖形的照相campos,三維圖形的透視命令hidden,曲面圖形顏色的遮掩shading;光源的建立light、照明方式lighting、控制光效果的材質(zhì)命令material第4章Matlab的圖形功能

..4.三維視圖可視效果的控制第4章Matlab的圖形功能31函數(shù)view的用法。

[X,Y]=meshgrid(-8:0.5:8);R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;subplot(2,2,1)%缺省視角

surf(X,Y,Z)xlabel('X軸','FontWeight','bold')ylabel('y軸','FontWeight','bold')zlabel('z軸','FontWeight','bold')title('\fontname{隸書}缺省視角')subplot(2,2,2)surf(X,Y,Z)xlabel('X軸','FontWeight','bold')ylabel('y軸','FontWeight','bold')zlabel('z軸','FontWeight','bold')title('\fontname{隸書}方位角為90°仰角為0°')view(90,0)subplot(2,2,3)surf(X,Y,Z)xlabel('X軸','FontWeight','bold')ylabel('y軸','FontWeight','bold')zlabel('z軸','FontWeight','bold')title('\fontname{隸書}方位角為-37.5°仰角為80°')view(-37.5,80)第4章Matlab的圖形功能

subplot(2,2,4)surf(X,Y,Z)xlabel('X軸','FontWeight','bold')ylabel('y軸','FontWeight','bold')zlabel('z軸','FontWeight','bold')title('\fontname{隸書}方位角為0°仰角為90°')view(0,90)..函數(shù)view的用法。第4章Matlab的圖形功能32第4章Matlab的圖形功能

5.柱面和球面的三維表達(dá)a.柱面的表達(dá)cylinder

cylinder命令中,柱面的軸線定義為z軸,只要給出母線的描述就可完成一個(gè)柱面。

調(diào)用格式為:

[X,Y,Z]=cylinder(R,N);[X,Y,Z]=cylinder(R):缺省值N=20;

[X,Y,Z]=cylinder:缺省值N=20,R=[1,1]。R:是一描述柱面母線的向量;N:是旋轉(zhuǎn)柱面上的分割線條數(shù);[X,Y,Z]:是返回的x,y,z坐標(biāo)向量。

繪制一個(gè)柱面。

t=pi:0.01:3*pi;r=sin(t)+t;cylinder(r,30)shadinginterp..第4章Matlab的圖形功能5.柱面和球面的三維表達(dá)33第4章Matlab的圖形功能

b.球面的表達(dá)sphere

調(diào)用格式為:[X,Y,Z]=sphere(N):產(chǎn)生一個(gè)(N+1)×(N+1)的矩陣,然后用函數(shù)surf命令繪制一個(gè)單位的球面,N為設(shè)置分割線的條數(shù);[X,Y,Z]=sphere:缺省值

N=20。畫一個(gè)球面。

[X,Y,Z]=sphere;surf(X,Y,Z)..第4章Matlab的圖形功能b.球面的表達(dá)spher34第4章Matlab的圖形功能

四、特殊圖形繪制為了將抽象的數(shù)據(jù)表達(dá)得更形象,除了繪制二維、三維圖形外,還要用到直方圖、面積圖、餅圖等特殊圖形。特殊圖形指令

..第4章Matlab的圖形功能四、特殊圖形繪制特殊圖形35第4章Matlab的圖形功能

1.面積圖命令area表現(xiàn)各個(gè)不同部分對(duì)整體所作的貢獻(xiàn)

area(X,Y):與plot的命令的使用方法相似,將連線圖到x軸的那部分填上了顏色;area(Y):缺省值X=1:SIZE(Y);area(X,Y,LEVEL)或

area(Y,LEVEL):填色部分為由連線圖到y(tǒng)=level的水平線之間的部分。繪制一面積圖

X=-2:2;Y=[3,5,2,4,1;5,4,2,3,5;3,4,5,2,1];area(X',Y')legend('因素1','因素2','因素3')gridon..第4章Matlab的圖形功能1.面積圖命令area36第4章Matlab的圖形功能

2.直方圖命令bar直方圖常用于統(tǒng)計(jì)數(shù)據(jù)的作圖,有bar、bar3、barh和bar3h幾種函數(shù),其調(diào)用格式類似。以函數(shù)bar為例:

bar(X,Y):X是橫坐標(biāo)向量,Y可以是向量或矩陣。Y是向量時(shí),每一個(gè)元素對(duì)應(yīng)一個(gè)豎條;Y是m行n列矩陣時(shí),將畫出m組豎條,每組包括n個(gè)豎條;bar(Y):橫坐標(biāo)使用缺省值X=1:M;bar(X,Y,WIDTH)或bar(Y,WIDTH):用WIDTH指定豎條的寬度,如果WIDTH>1,條與條之間將重合。缺省寬度為0.8;bar(...,’grouped’):產(chǎn)生缺省的組合直方圖;bar(...,’stacked’):產(chǎn)生累積的直方圖;bar(...,linespec):指定條的顏色;H=bar(...):返回條形圖對(duì)象的句柄。

..第4章Matlab的圖形功能2.直方圖命令bar37第4章Matlab的圖形功能

用繪制直方圖的幾種命令繪制直方圖。X=-2:2;Y=[3,5,2,4,1;5,4,2,3,5;3,4,5,2,1];subplot(2,2,1)bar(X,Y','r')xlabel('x')ylabel('y')colormap(cool)subplot(2,2,2)barh(X,Y','grouped')xlabel('y')ylabel('x')colormap(cool)subplot(2,2,3)bar(X,Y','stacked')xlabel('x')ylabel('\Sigmay')colormap(summer)subplot(2,2,4)barh(X,Y','stacked')xlabel('y');ylabel('\Sigmax')colormap(summer)..第4章Matlab的圖形功能用繪制直方圖的幾種命令繪38第4章Matlab的圖形功能

繪制三維直方圖。X=-2:2;Y=[3,5,2,4,1;5,4,2,3,5;3,4,5,2,1];subplot(2,2,1)bar3(X,Y','r')zlabel('y')ylabel('x')colormap(cool)subplot(2,2,2)bar3h(X,Y','grouped')ylabel('x')zlabel('y')colormap(cool)subplot(2,2,3)bar3(X,Y','stacked')ylabel('x')zlabel('\Sigmay')colormap(summer)subplot(2,2,4)bar3h(X,Y’,’stacked’)zlabel(’x’)ylabel(’\Sigmay’)colormap(summer)..第4章Matlab的圖形功能繪制三維直方圖。subp39第4章Matlab的圖形功能

3.餅圖命令pie餅圖又叫扇形圖,用于顯示向量中元素所占向量元素總和的百分比。

pie和pie3分別用于繪制二維和三維餅圖。調(diào)用格式:pie(X):向量X的餅圖。把X的每一個(gè)元素在所有元素總和中占的比例表達(dá)出來(lái);

pie(X,EXPLODE):向量EXPLODE(和向量X長(zhǎng)度相等)用于指定餅圖中抽出一部分的塊(非零值對(duì)應(yīng)的塊);pie(...,LABELS):LABELS是用于標(biāo)注餅圖的字符串?dāng)?shù)組,其長(zhǎng)度必須和向量X相等;H=pie(...):返回包括餅圖和文本對(duì)象句柄。..第4章Matlab的圖形功能3.餅圖命令pie.40用函數(shù)pie和pie3繪制餅圖。x=[200,360,120,400,320];subplot(2,2,1),pie(x,[00010])subplot(2,2,2),pie3(x,[00010])

subplot(2,2,3),pie(x(2:5))subplot(2,2,4),x=[0.1,0.12,0.21,0.34,0.11];pie3(x,{'A','B','C','D','E'})第4章Matlab的圖形功能

..用函數(shù)pie和pie3繪制餅圖。第4章Matl41第4章Matlab的圖形功能

五、極坐標(biāo)、柱坐標(biāo)和球坐標(biāo)系下繪制圖形1.極坐標(biāo)系下繪制圖形ploar是直接在極坐標(biāo)系下繪圖的命令調(diào)用格式為:ploar(THETA,RHO,S)其中S是字符串,用來(lái)控制圖形的線型。繪制半徑為2的漸開線。

rhe=2;theta=0:pi/20:4*pi;rho=rhe+theta*rhe;polar(theta,rho,'r')

..第4章Matlab的圖形功能五、極坐標(biāo)、柱坐標(biāo)和球坐42第4章Matlab的圖形功能

2.柱坐標(biāo)系和球坐標(biāo)系下繪制圖形在MATLAB中沒(méi)有在柱坐標(biāo)和球坐標(biāo)下直接繪制數(shù)據(jù)圖形的命令,但

pol2cart和sph2cart

命令能夠?qū)⒅鴺?biāo)和球坐標(biāo)值轉(zhuǎn)化為直角坐標(biāo)系下的坐標(biāo)值,然后在直角坐標(biāo)下繪制數(shù)據(jù)圖形。a.pol2cart函數(shù)

將柱坐標(biāo)轉(zhuǎn)化為直角坐標(biāo),其調(diào)用格式為:[X,Y]=pol2cart(TH,R)[X,Y,Z]=pol2cart(TH,R,Z)

參數(shù)TH表示極坐標(biāo)系下的角度向量或矩陣,R是極半徑向量或矩陣,Z是極坐標(biāo)下的高度向量或矩陣。它們必須大小相等或成比例。X、Y、Z為直角坐標(biāo)系下的坐標(biāo)向量或矩陣。

..第4章Matlab的圖形功能2.柱坐標(biāo)系和球坐標(biāo)系下43第4章Matlab的圖形功能

b.sph2cart命令將球坐標(biāo)轉(zhuǎn)化直角坐標(biāo),其調(diào)用格式為:[X,Y,Z]=sph2cart(TH,PHI,R)

參數(shù)TH為球坐標(biāo)系下的方位角(Azimuth),PHI是球坐標(biāo)系下的俯視角(Elevation),R是球半徑。他們的大小必須相等或成比例。X、Y、Z為直角坐標(biāo)系下的坐標(biāo)向量或矩陣。函數(shù)pol2cart和sph2cart的用法。

theta=0:pi/20:6*pi;rho=sin(theta);[t,r]=meshgrid(theta,rho);z=r.*t;[X,Y,Z]=pol2cart(t,r,z);mesh(X,Y,Z)..第4章Matlab的圖形功能b.sph2cart44phi=theta.^2-theta;[t1,p1]=meshgrid(theta,phi);r1=p1.*t1;figure(2)%繪制球坐標(biāo)轉(zhuǎn)化直角坐標(biāo)時(shí)的圖形

[X1,Y1,Z1]=sph2cart(t1,p1,r1);mesh(X1,Y1,Z1)第4章Matlab的圖形功能

..phi=theta.^2-theta;第4章Matl45第4章Matlab的圖形功能

六、坐標(biāo)軸的調(diào)整和圖形的標(biāo)注1.坐標(biāo)軸調(diào)整命令..第4章Matlab的圖形功能六、坐標(biāo)軸的調(diào)整和圖形的46第4章Matlab的圖形功能

2.圖形標(biāo)注坐標(biāo)軸和圖形標(biāo)題標(biāo)注標(biāo)注坐標(biāo)軸x、y和z的命令函數(shù)為

xlabel、ylabel和zlabel,調(diào)用格式為:xlabel(’text’)xlabel(’text’,’Property1’,PropertyValue1,’Property2’,PropertyValue2,...)H=xlabel(...)返回坐標(biāo)軸標(biāo)注的句柄。其中,’text’是要添加的標(biāo)注文本?!疨roperty’是文本的屬性名,’PropertyValue’是屬性值(所用字體、大小、標(biāo)注角度等)。圖形加標(biāo)題的函數(shù)為title,其調(diào)用格式與坐標(biāo)軸標(biāo)注類似。..第4章Matlab的圖形功能2.圖形標(biāo)注..47特征字符串中的希臘字母

第4章Matlab的圖形功能

..特征字符串中的希臘字母第4章Matlab的圖形功能48特征字符串中的其他字符

第4章Matlab的圖形功能

..特征字符串中的其他字符第4章Matlab的圖形功能49第4章Matlab的圖形功能

b.圖例的標(biāo)注legend命令實(shí)現(xiàn)不同圖例的說(shuō)明。其調(diào)用格式為:legend(string1,string2,string3,...)legend(string1,string2,string3,...,Pos)

按順序把字符串添加到相應(yīng)的曲線線型符號(hào)之后;Pos對(duì)圖例的位置作出設(shè)置和調(diào)整:0=自動(dòng)把圖例置于最佳位置(和圖中曲線重復(fù)最少);1=置于圖形窗口的右上角(缺省值);2=置于圖形窗口的左上角;3=置于圖形窗口的左下角;4=置于圖形窗口的右下角;-1=置于圖形窗口的右側(cè)(

外部)。

..第4章Matlab的圖形功能b.圖例的標(biāo)注..503.控制分格線對(duì)二維和三維圖形都適用。有三種用法:gridon:打開分格線控制開關(guān),以后繪制的圖形都帶有分格線;gridoff:關(guān)閉分格線控制開關(guān),以后繪制的圖形都不帶分格線;grid:用于實(shí)現(xiàn)分格線繪制切換。第4章Matlab的圖形功能

..3.控制分格線第4章Matlab的圖形功能..51第4章Matlab的圖形功能

繪制圖形,并用函數(shù)xlabel、title和legend命令進(jìn)行標(biāo)注。t=0:0.1:4*pi;y=sin(t);y1=cos(t);plot(t,y,':',t,y1,'r*')xlabel('x軸(0--4\pi)','fontsize',12,'fontweight','bold')ylabel('y軸','fontsize',12,'fontweight','bold')title('繪制正弦波和余弦波Pos=1','fontsize',10,'fontweight','bold','fontangle','italic')text(pi,0,'\leftarrowsin(\pi)=0')text(pi,-1,'\leftarrowcos(\pi)=-1')text(pi/2,0.9,['\uparrowsin(\pi/2)=',num2str(sin(pi/2))])text(0,-0.6,['繪圖日期:',date])text(0,-0.8,['MATLAB版本:',version])legend('正弦波','余弦波')figure(2)plot(t,y,':',t,y1,'r*')title('繪制正弦波和余弦波Pos=0','fontsize',10,'fontweight','bold','fontangle','italic')legend('正弦波','余弦波',0)gridonfigure(3)plot(t,y,':',t,y1,'r*')title('繪制正弦波和余弦波Pos=-1','fontsize',10,'fontweight','bold','fontangle','italic')..第4章Matlab的圖形功能繪制圖形,并用函數(shù)xl52第4章Matlab的圖形功能

text(7*pi/2,0,'\rightarrowcos(\pi*7/2)=0')legend('正弦波','余弦波',-1)gridoff..第4章Matlab的圖形功能text(7*pi/2,53第4章Matlab的圖形功能

七、圖形對(duì)象的有關(guān)概念圖形用戶界面(GraphicUserInterface)是指包含圖形對(duì)象的用戶界面,是MATLAB句柄圖形系統(tǒng)的子系統(tǒng)。它包含兩類圖形對(duì)象:一是用戶界面控件對(duì)象(Uicontrol);一是用戶界面菜單對(duì)象(Uimenu)。1.句柄圖形

句柄圖形(HandleGraphics)是一種面向?qū)ο螅∣bject-Oriented)的繪圖系統(tǒng)概念,它提供了創(chuàng)建計(jì)算機(jī)圖形所必須的各種軟件,所支持的指令可以直接創(chuàng)建線、文字、面以及圖形用戶界面。句柄圖形基于這樣的概念:一幅圖的每一個(gè)組成部分都是一個(gè)對(duì)象(Object),每一個(gè)對(duì)象有一系列句柄(Handle)和它相關(guān)。..第4章Matlab的圖形功能七、圖形對(duì)象的有關(guān)概念.542.圖形對(duì)象和句柄圖形的結(jié)構(gòu)層次

圖形對(duì)象包括圖形窗口或者圖形,還有坐標(biāo)系、線條、曲面、文本等。這些對(duì)象按父對(duì)象和子對(duì)象組成MATLAB圖形體系的層次結(jié)構(gòu)。每個(gè)圖形對(duì)象都由若干可以被獨(dú)立操作的對(duì)象構(gòu)成,它不必包含全部對(duì)象,但是必須具備根屏幕(Root)和圖形窗(Figure)。每個(gè)父對(duì)象可以包含一個(gè)或多個(gè)子對(duì)象。除了控件對(duì)象(Uicontrol)和菜單對(duì)象(Uimenu)外,所有的對(duì)象都是坐標(biāo)軸的子對(duì)象,并且在這些坐標(biāo)軸上顯示。所有創(chuàng)建對(duì)象的函數(shù)當(dāng)父對(duì)象不存在時(shí),都會(huì)創(chuàng)建它們。第4章Matlab的圖形功能

..2.圖形對(duì)象和句柄圖形的結(jié)構(gòu)層次第4章Matlab的55第4章Matlab的圖形功能

句柄圖形體系的對(duì)象層次結(jié)構(gòu)圖

..第4章Matlab的圖形功能句柄圖形體系的對(duì)象層次結(jié)56第4章Matlab的圖形功能

3.對(duì)象句柄句柄(Handle)是分配給每一個(gè)對(duì)象的數(shù)字標(biāo)識(shí)(Identifier),每創(chuàng)建一個(gè)對(duì)象時(shí),就為它建立一個(gè)惟一的句柄。句柄是存取圖形對(duì)象的惟一規(guī)范識(shí)別符,不同對(duì)象的句柄不可能重復(fù)和混淆。每臺(tái)計(jì)算機(jī)的根對(duì)象是根屏幕(Root),其句柄總是數(shù)字0;而圖形窗口(Figure)的句柄總是正整數(shù),用它來(lái)標(biāo)識(shí)圖形窗的序號(hào)。除根對(duì)象和圖對(duì)象外,其余對(duì)象的句柄則是雙精度浮點(diǎn)數(shù)。除了根對(duì)象外,所有的對(duì)象都由與之相對(duì)應(yīng)的內(nèi)置函數(shù)(Build-inFunction)創(chuàng)建,每個(gè)函數(shù)在創(chuàng)建對(duì)象的同時(shí),還可以返回該對(duì)象的句柄h。..第4章Matlab的圖形功能3.對(duì)象句柄..57第4章Matlab的圖形功能

創(chuàng)建圖形對(duì)象的底層函數(shù)..第4章Matlab的圖形功能創(chuàng)建圖形對(duì)象的底層函數(shù)58第4章Matlab的圖形功能

獲取圖形對(duì)象句柄的函數(shù)

有一些函數(shù)可以用來(lái)獲取對(duì)象的句柄。..第4章Matlab的圖形功能獲取圖形對(duì)象句柄的函數(shù)59第4章Matlab的圖形功能

4.圖形對(duì)象的操作在獲取圖形句柄后,即可對(duì)圖形對(duì)象進(jìn)行各種操作。a.刪除圖形對(duì)象的delete命令調(diào)用格式為:delete(h)該命令可以刪除句柄h所指的對(duì)象及其所有的子對(duì)象。例如delete(gca)將刪除當(dāng)前軸和它所有的子對(duì)象。

由于該命令不提供確認(rèn)、直接執(zhí)行,用戶在使用時(shí)應(yīng)謹(jǐn)慎進(jìn)行。..第4章Matlab的圖形功能4.圖形對(duì)象的操作..60第4章Matlab的圖形功能

b.函數(shù)findobj快速地遍歷對(duì)象層,并獲取指定屬性的對(duì)象句柄。調(diào)用方式如下:h=findobj(’propertyname’,propertyvalue,…):在所有的對(duì)象層中查找符合指定屬性值的對(duì)象,返回句柄值h;h=findobj(ObjectHandle,'propertyname',propertyvalue,…):查找范圍限制在句柄“ObjectHandle”指定的對(duì)象及其子對(duì)象中;h=findobj(ObjectHandles,'flat','propertyname',propertyvalue,…):把查找的范圍限制在句柄“ObjectHandle”指定的對(duì)象中,但不包括其子對(duì)象;h=findobj:返回根對(duì)象和所有子對(duì)象的句柄值;h=findobj(ObjectHandles):返回“ObjectHandle”指定的對(duì)象和其所有子對(duì)象的句柄值。..第4章Matlab的圖形功能b.函數(shù)findob61第4章Matlab的圖形功能

創(chuàng)建一個(gè)圖形對(duì)象,并尋求圖形對(duì)象的句柄值。mesh(peaks(30));%創(chuàng)建山峰的網(wǎng)格圖

text(30,20,2,'\leftarrowpeak')%給圖形對(duì)象加上文本,圖形對(duì)象中包括坐標(biāo)軸、線條和文本標(biāo)注h=findobj(gcf)%求當(dāng)前圖形窗口的句柄

h=%返回句柄值賦予變量

1.000099.0010101.0006100.0016句柄中的元素排列順序決定于各個(gè)對(duì)象在整個(gè)對(duì)象層次結(jié)構(gòu)中的位置。

h(1)=1為圖形對(duì)象(Figure)的句柄;h(2)=99.001為圖的下一級(jí)子對(duì)象坐標(biāo)軸的句柄;h(3)=101.0006為坐標(biāo)軸的下一級(jí)子對(duì)象線條的句柄;h(4)=100.0016為坐標(biāo)軸的下一級(jí)子對(duì)象文本的句柄。..第4章Matlab的圖形功能創(chuàng)建一個(gè)圖形對(duì)象,并尋求62第4章Matlab的圖形功能

c.函數(shù)

copyobj把對(duì)象從一個(gè)父對(duì)象中復(fù)制到另一個(gè)父對(duì)象中。若復(fù)制的對(duì)象中含有子對(duì)象,則把所有的子對(duì)象一并復(fù)制。調(diào)用格式如下:

C=copyobj(H,P):H和P都是向量,H和P的長(zhǎng)度必須相等,向量的元素為對(duì)象的句柄。H中的句柄對(duì)應(yīng)的圖形對(duì)象都被復(fù)制到P中相應(yīng)句柄的圖形元素之下,分別成為這些父對(duì)象的子對(duì)象。新對(duì)象的句柄將賦值給向量C中的相應(yīng)元素;C=copyobj(H,p):H是向量,p是標(biāo)量。H中的每一個(gè)句柄對(duì)應(yīng)的圖形對(duì)象都將被復(fù)制到句柄p的圖形對(duì)象之下,成為這個(gè)父對(duì)象p的子對(duì)象。新子對(duì)象的句柄將賦給向量C中的相應(yīng)元素;C=copyobj(h,P):h是標(biāo)量,P是向量。句柄h

的圖形對(duì)象將被復(fù)制到向量P中的每個(gè)句柄對(duì)應(yīng)的圖形對(duì)象之下,分別成為這些父對(duì)象的子對(duì)象。新子對(duì)象的句柄將賦給向量C

中的對(duì)應(yīng)元素。

..第4章Matlab的圖形功能c.函數(shù)copyob63第4章Matlab的圖形功能

函數(shù)copyobj的用法。

mesh(peaks(30));text(30,20,2,'\leftarrowpeak');hh=findobj(gcf)在上述程序之后加入如下內(nèi)容:

h=findobj('string','\leftarrowpeak')%將文字對(duì)象的句柄值返回給變量h

figure%重新建立一個(gè)圖形對(duì)象mesh(peaks(20));%在20*20的區(qū)域創(chuàng)建圖形內(nèi)容

使用copyobj命令進(jìn)行對(duì)象的復(fù)制,在上述程序后加上如下內(nèi)容:

ha=copyobj(h,gca)%將文本對(duì)象(h句柄所指的對(duì)象)復(fù)制到新區(qū)域圖形中

hh=%程序輸出結(jié)果

1.000099.0013101.0011100.0038h=101.0011ha=200.0004..第4章Matlab的圖形功能函數(shù)copyobj的64第4章Matlab的圖形功能

5.圖形對(duì)象屬性的獲取及其設(shè)置

所有的對(duì)象都有屬性(Property),對(duì)象的屬性可包括諸如對(duì)象的位置、顏色、類型、父對(duì)象、子對(duì)象及其他內(nèi)容??赏ㄟ^(guò)設(shè)定這些屬性來(lái)定義和修改對(duì)象的特征。對(duì)象屬性包括屬性名(字符串,識(shí)別屬性時(shí)不分大小寫)和相應(yīng)的屬性值。涉及到各對(duì)象屬性的文件和查閱方法

閱讀或者打印以下PDF文件:help\pdf_doc\matlab\graphg.pdf;help\pdf_doc\matlab\ref\refbook2.pdf

用命令help查看有關(guān)對(duì)象的資料在命令窗口中鍵入helpfigure,直接獲得有關(guān)圖形對(duì)象的屬性描述;

在幫助窗口中,鍵入關(guān)鍵字(如GraphicProperty)搜索、查詢關(guān)于對(duì)象屬性的文件;利用

get、set命令在

命令窗口中直接查詢對(duì)象的屬性。

..第4章Matlab的圖形功能5.圖形對(duì)象屬性的獲取及65第4章Matlab的圖形功能

get函數(shù)用于獲取指定對(duì)象的屬性。調(diào)用方法:◆v=get(H,’PropertyName’):返回句柄為H的對(duì)象中名為“PropertyName”屬性的值。H是向量,將同時(shí)返回向量H中每個(gè)句柄對(duì)應(yīng)圖形對(duì)象的指定屬性值,H是標(biāo)量,返回句柄為H的對(duì)象的所有屬性名及其當(dāng)前取值;◆

v=get(h):h是標(biāo)量,返回一個(gè)結(jié)構(gòu),結(jié)構(gòu)的每個(gè)域名就是句柄為h的對(duì)象的屬性名,每個(gè)域又包括屬性的值;◆

v=get(0,’factory<objecttype><propertyname>’):對(duì)于所有類型的對(duì)象,返回所有可以由用戶設(shè)定的屬性的“出廠值”(即未經(jīng)過(guò)任何用戶改動(dòng)的最初缺省值),尖括號(hào)內(nèi)的內(nèi)容表示可選?!?/p>

v=get(h,’default<ObjectType><PropertyName>’):返回缺省的屬性值。句柄h必須是標(biāo)量,尖括號(hào)內(nèi)的內(nèi)容表示可選,如果這兩個(gè)內(nèi)容都不選,那么該函數(shù)返回句柄為h的對(duì)象所有屬性的缺省值。..第4章Matlab的圖形功能get函數(shù)用于獲取指定66set函數(shù)用來(lái)設(shè)置對(duì)象屬性值。調(diào)用方法:◆

set(H,’PropertyName’,PropertyValue):把句柄為H的對(duì)象中名為PropertyName的屬性值設(shè)置為“Property-Value”。H為向量時(shí),函數(shù)為所有對(duì)象設(shè)置屬性值;◆

set(h,a):a是結(jié)構(gòu),其域名就是對(duì)象的屬性名,屬性值包括在域中。把屬性值賦給和域名相同的屬性。句柄h為標(biāo)量;◆

set(H,PN,PV):PN和PV都是n×1維的數(shù)組,PN中的元素為需要設(shè)置的屬性名,PV中的元素是設(shè)置的屬性值;◆set(H,’PropertyName1’,PropertyValue1,’PropertyName2’,PropertyValue2,...):

用一條語(yǔ)句同時(shí)設(shè)置多個(gè)屬性值。第4章Matlab的圖形功能

..set函數(shù)用來(lái)設(shè)置對(duì)象屬性值。第4章Matlab的圖67第4章Matlab的圖形功能

創(chuàng)建一個(gè)圖形對(duì)象,練習(xí)和體會(huì)set和get函數(shù)的用法。x=0:0.1:2*pi;y1=sin(x);%創(chuàng)建一個(gè)正弦函數(shù)H1_sin=plot(x,y1,'*')%畫圖并返回圖像的句柄值

set(H1_sin,'color',[1,0.5,0],'Linewidth',1)%調(diào)用函數(shù)set設(shè)置正弦曲線的顏色和線寬y2=cos(x);holdonH1_cos=plot(x,y2)set(H1_cos,'color',[0.2501])title('正弦和余弦函數(shù)曲線','fontsize',16,'color','blue')H_sin_color=get(H1_sin,'color')%調(diào)用get函數(shù)返回具有句柄H1_sin的對(duì)象的顏色

程序執(zhí)行結(jié)果如下

H1_sin=3.0010H1_cos=101.0009H_sin_color=1.00000.50000..第4章Matlab的圖形功能創(chuàng)建一個(gè)圖形對(duì)象,練習(xí)和68第4章Matlab的圖形功能

八、用GUI設(shè)計(jì)工具集創(chuàng)建用戶菜單和控制對(duì)象GUI設(shè)計(jì)工具集可以通過(guò)命令guide

啟動(dòng),也可以由文件創(chuàng)建。其窗口具有菜單欄、工具欄、工作區(qū)等欄目,包括了編輯圖形屬性、設(shè)計(jì)GUI菜單和

GUI控制對(duì)象等工具。1.圖形屬性編輯器

屬性檢查器(PropertyInspector)可以對(duì)所有圖形對(duì)象的所有屬性進(jìn)行交互式編輯。屬性檢查器顯示了當(dāng)前對(duì)象的所有屬性值,各種對(duì)象按層次排列。最上面的按鈕表示所顯示屬性所屬的對(duì)象名稱,編輯器下面為屬性內(nèi)容,其中,左側(cè)為對(duì)象的所有屬性名稱,右側(cè)為當(dāng)前該屬性的取值,用戶可在此欄對(duì)屬性的值進(jìn)行修改和添加。

..第4章Matlab的圖形功能八、用GUI設(shè)計(jì)工具集69第4章Matlab的圖形功能

..第4章Matlab的圖形功能..70第4章Matlab的圖形功能

2.用戶菜單對(duì)象(unimenu)由GUI窗口上【Tools】->【MenuEditer】命令,或者工具欄上的按鈕,即可打開菜單編輯器。

最上面的主要功能按鈕為:NewMenu:新建一個(gè)菜單;NewMenuItem:新建一個(gè)子菜單項(xiàng);NewContextmenu:新建一個(gè)上下文菜單;DeleteSelectedItem:刪除選定的菜單欄。左邊窗口給出當(dāng)前圖形中的菜單項(xiàng)列表,右邊給出相應(yīng)的對(duì)象屬性,分別是菜單項(xiàng)的標(biāo)注(Label)、標(biāo)記(Tag)和回調(diào)程序(Callback)的內(nèi)容。用戶可直接對(duì)之進(jìn)行修改和添加。..第4章Matlab的圖形功能2.用戶菜單對(duì)象(uni71第4章Matlab的圖形功能

菜單對(duì)象的屬性Label和Callback是菜單對(duì)象的基本屬性,編寫一個(gè)具有基本功能的菜單對(duì)象必須要設(shè)置Label和Callback屬性。Label是在菜單項(xiàng)上顯示的標(biāo)注文本。可以在相應(yīng)字符的前加上符號(hào)“&”為L(zhǎng)abel定義快捷鍵,以便使用組合鍵‘Alt+字符’來(lái)打開相應(yīng)的菜單項(xiàng)。Callback屬性用來(lái)設(shè)置菜單項(xiàng)的回調(diào)程序,其內(nèi)容可以是MATLAB的函數(shù)、命令和可執(zhí)行的表達(dá)式,也可調(diào)用自己編寫的函數(shù)。Checked屬性用于設(shè)置是否在菜單項(xiàng)前添加選中標(biāo)記,設(shè)為“on”表示添加,“off”表示不添加。Separator屬性用于設(shè)置是否在菜單項(xiàng)前添加分隔線,設(shè)為“on”表示添加,“off”表示不添加。..第4章Matlab的圖形功能菜單對(duì)象的屬性..72第4章Matlab的圖形功能

例:編制一個(gè)由draw、colormap和axis組成的多項(xiàng)選擇菜單1)在菜單編輯器中設(shè)置各級(jí)菜單項(xiàng)的Lable項(xiàng)、Tag項(xiàng)和Callback項(xiàng);2)設(shè)置各個(gè)回調(diào)函數(shù)的內(nèi)容;..第4章Matlab的圖形功能例:編制一個(gè)由draw、73第4章Matlab的圖形功能

%--------------------------------------------------------------------functionvarargout=Draw_Callback(h,eventdata,handles,varargin)%--------------------------------------------------------------------functionvarargout=membrance_Callback(h,eventdata,handles,varargin)membrane%--------------------------------------------------------------------functionvarargout=peaks_Callback(h,eventdata,handles,varargin)peaks%--------------------------------------------------------------------functionvarargout=Sinc_Callback(h,eventdata,handles,varargin)[x,y]=meshgrid(-5:0.5:5);r=sqrt(x.^2+y.^2)+eps;z=sin(r)./r;surf(x,y,z);axistight%--------------------------------------------------------------------functionvarargout=Colormap_Callback(h,eventdata,handles,varargin)..第4章Matlab的圖形功能%----------74%--------------------------------------------------------------------functionvarargout=Hot_Callback(h,eventdata,handles,varargin)colormap(hot);%--------------------------------------------------------------------functionvarargout=Cool_Callback(h,eventdata,handles,varargin)colormap(cool);%--------------------------------------------------------------------functionvarargout=Defaults_Callback(h,eventdata,handles,varargin)colormap('default');%--------------------------------------------------------------------functionvarargout=Axis_Callback(h,eventdata,handles,varargin)%--------------------------------------------------------------------functionvarargout=Axis_on_Callback(h,e

溫馨提示

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