第四講-matlab數(shù)學建模之圖像處理、程序設計_第1頁
第四講-matlab數(shù)學建模之圖像處理、程序設計_第2頁
第四講-matlab數(shù)學建模之圖像處理、程序設計_第3頁
第四講-matlab數(shù)學建模之圖像處理、程序設計_第4頁
第四講-matlab數(shù)學建模之圖像處理、程序設計_第5頁
已閱讀5頁,還剩64頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1第四講圖形處理MATLAB7程序設計21.基本的繪圖命令基本的繪圖命令繪圖的一般步驟繪制二維曲線圖極坐標圖形的繪制多個圖形的繪制方法曲線的色彩、線型和數(shù)據點型3(1)基本的繪圖命令

繪制基本線性圖的函數(shù)表函

數(shù)

名功

述plot在x軸和y軸都按線性比例繪制二維圖形plot3在x軸、y軸和z軸都按線性比例繪制三維圖形loglog在x軸和y軸按對數(shù)比例繪制二維圖形semilogx在x軸按對數(shù)比例,y軸按線性比例繪制二維圖形semilogy在y軸按對數(shù)比例,x軸按線性比例繪制二維圖形plotyy繪制雙y軸圖形圖形的標注

為清晰表達圖形和圖中曲線的意義,應在圖形中加入適當?shù)臉俗?,包括圖形標題、X軸、Y軸名稱等。

4圖形標注命令含義title圖形標題xlabel對x軸標注名稱ylabel對y軸標注名稱text通過程序在圖形指定位置放入文本字符串gtext點擊鼠標指定位置放入文本字符串legend在圖形中添加注解grid網格線axis坐標軸調整hold圖形保持zoom圖形縮放5(2)繪圖的一般步驟基本的繪圖步驟步

驟典

碼1.準備繪圖數(shù)據x=0:0.2:12;y1=bessel(1,x);2.選擇一個窗口并在窗口中給圖形定位figure(1),subplot(2,2,1)3.調用基本的繪圖函數(shù)h=plot(x,y1,x,y2,x,y3);4.選擇線型和標記特性set(h,'LineWidth',2,{'LineStyle'},{'--';':';'-.'})5.設置坐標軸的極限值、標記符號和網格線axis([012-0.51])6.使用坐標軸標簽、圖例和文本對圖形進行注釋xlabel('Time')ylabel('Amplitude')6(3)繪制二維曲線圖二維曲線圖在MATLAB7中的繪制是最為簡便的。如果將X軸和Y軸的數(shù)據分別保存在兩個向量中,同時向量的長度完全相等,那么可以直接調用函數(shù)進行二維圖形的繪制。在MATLAB7中,使用plot函數(shù)進行二維曲線圖的繪制。7A、二維平面圖形與坐標系1.幾個基本的繪圖命令

a.線性坐標曲線

plot

函數(shù)命令

plot是

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

命令格式:plot(X,Y)plot(x1,y1,x2,y2,…):綜合調用方式

8用命令plot(x,y)繪制函數(shù)

y=cos(x)在兩個周期內的圖形。

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)9調用格式:plot(x,y,s),s為類型說明參數(shù),是字符串。s字符串可以是三種類型的符號之一,也可以是線型與顏色和定點標記與顏色的組合;如果沒有s參數(shù),plot將使用缺省設置(實線,前七種顏色順序著色)繪制曲線;在當前坐標系中繪圖時,每調入一次繪圖函數(shù),MATLAB將擦掉坐標系中已有的圖形對象??梢杂胔oldon命令在一個坐標系中增加新的圖形對象。注意MATLAB會根據新圖形的大小,重新改變坐標系的比例。用不同的線型和標注來繪制兩條曲線。t1=0:0.1:2*pi;t2=0:0.1:6;y1=sin(t1);y2=sqrt(t2);plot(t1,y1,':hb',t2,y2,'--g')

10繪制二維曲線圖>>x=0:0.01:10;>>y=tan(x);>>plot(x,y)>>11(4)極坐標圖形的繪制MATLAB提供了polar函數(shù)來在極坐標下繪制圖形:>>x=0:0.01:10;>>y1=sin(x);>>y2=cos(x-2.5);>>polar(y1,y2,'-r+')>>2.極坐標圖

polar(theta,rho)繪制以theta為角度,rho為半徑的極坐標曲線。例

:繪制以y=sin(2t)*cos(2t)的極坐標曲線。

>>t=0:2*pi/100:2*pi;>>sin2t=sin(2*t);>>cos2t=cos(2*t);>>polar(t,sin2t.*cos2t)13(5)多個圖形的繪制方法subplot函數(shù)可以實現(xiàn)多個圖形的繪制:>>x=0:.1:20;>>subplot(2,2,1)>>plot(x,sin(x));>>14多個圖形的繪制方法>>x=0:.1:20;>>subplot(2,2,2)>>plot(x,cos(x));>>15多個圖形的繪制方法>>subplot(2,2,3)>>x=0:.1:2;>>y1=tan(x);>>plot(x,y1,'--b*');>>16(6)曲線的色彩、線型和數(shù)據點型

曲線的色彩、線型和數(shù)據點型參數(shù)定義

顏色符號含義數(shù)據點型含義線型含義b藍色.點-實線g綠色xX符號:點線r紅色++號-.點劃線c籃綠色h六角星形--虛線m紫紅色*星號(空白)不畫線y黃色s方形

k黑色d菱形

17(1)圖題的標注在MATLAB中,通常可以使用3種方式給圖形添加圖題:使用Insert菜單中的Title命令;使用屬性編輯器(PropertyEditor);使用title函數(shù)。18圖題的標注>>x=0:.1:2;>>y1=sin(x);>>y2=sin(x-0.25);>>y3=sin(x-0.5);>>plot(x,y1,'-.b',x,y2,'--r*',x,y3,'-.gh')>>title('Therethreelines')>>19文本標注舉例>>x=linspace(-3,5,100);>>y=cos(x);>>z=sin(x);>>plot(x,y,x,z)>>title('一條正弦曲線和一條余弦曲線')>>xlabel('x的取值范圍')>>ylabel('Y和Z的值')>>20(4)圖例的添加為了更好地區(qū)分所繪制的多條曲線,可以使用圖例加以說明,對它們表示的數(shù)據進行更準確的區(qū)分??梢允褂萌缦?種方法生成圖例:打開Insert菜單中并選擇Legend命令;單擊工具欄中的legend圖標;使用legend函數(shù)。21圖例的添加舉例22(5)坐標網格的添加在圖形繪制過程中,為了精確地知道圖形上某點的坐標,需要繪制坐標網格來定位,MATLAB7語言中提供了grid函數(shù)來實現(xiàn)這一功能:gridoff命令關閉坐標網格;gridon命令打開坐標網格gridmirror命令使用更細化的網格;grid(AX,…)命令使用AX坐標系代替當前坐標系。23坐標網格的添加舉例>>x=linspace(-5,5,100);>>y=x.^4+22*x.^2-6*x+10;>>plot(x,y)>>gridon>>24(6)使用矩形或是橢圓在圖形中圈出重要部分

用戶可以使用矩形或是橢圓在圖形中圈出特別的區(qū)域,從而使得該區(qū)域能引起特別的注意。當其中的一個矩形或是橢圓被選中時,用戶可以移動并改變它的大小,或是右擊它,在彈出的快捷菜單中用戶可以選擇改變它的屬性和外觀。25應用舉例當右擊矩形或是橢圓時,將彈出一個菜單263.三維圖形的繪制MATLAB語言提供了三維圖形的處理功能。與二維圖形相似,繪制三維圖形時可以使用MATLAB語言提供的相關函數(shù):三維線圖指令plot3三維網線圖和曲面圖三維網線圖三維曲面圖27(1)三維線圖指令plot3>>%該程序用于繪制三維的螺旋曲線圖>>t=0:pi/50:20*pi;>>plot3(sin(t),cos(2*t),sin(t)+cos(t))28(2)三維網線圖使用mesh函數(shù)來繪制三維網格圖形:

>>z=peaks(50);>>mesh(z);>>(2)

三維圖形的繪制三.三維曲面圖的繪制例

試單獨使用山峰演示函數(shù)peaks()。>>peaks(30)z=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)

30(3)三維曲面圖可是使用surf函數(shù)來繪制三維表面圖形:>>[X,Y]=meshgrid([-4:0.2:4]);>>Z=exp(-0.5*(X.^2-Y.^2));>>surf(X,Y,Z)>>

三維圖形的繪制三維曲面圖的繪制

:>>t=0:pi/10:2*pi;>>[X1,Y1,Z1]=cylinder(3,20);>>Z1=2*Z1;>>[X2,Y2,Z2]=cylinder(2+cos(t),20);>>Z2=2*Z2;>>subplot(1,2,1)>>surf(X1,Y1,Z1)>>title('圓柱面')>>subplot(1,2,2)>>surf(X2,Y2,Z2)>>title('半徑變化的圓柱面')

三維圖形的繪制

三維曲面圖的繪制

:>>[X1,Y1,Z1]=sphere(8);>>[X2,Y2,Z2]=sphere(20);>>subplot(1,2,1)>>surf(X1,Y1,Z1)>>title('64個面構成的球面')>>subplot(1,2,2)>>surf(X2,Y2,Z2)>>title('400個面構成的球面')

334.特殊圖形的繪制條形圖和面積圖(BarandAreaGraphs)餅形圖(PieCharts)離散型數(shù)據圖方向和速度矢量圖形等高線的繪制(ContourPlots)34(1)條形圖和面積圖條形圖和面積圖用于繪制向量和矩陣數(shù)據,這兩種圖形可以用來比較不同組數(shù)據的在總體數(shù)據中所占的比例,其中條形圖適于表現(xiàn)離散型數(shù)據,而面積圖適于表現(xiàn)連續(xù)型數(shù)據。函數(shù)功能描述bar繪制矩陣Y(m×n)各列的垂直條形圖,各條以垂直方向顯示barh繪制矩陣Y(m×n)各列的垂直條形圖,各條以水平方式顯示bar3繪制矩陣Y(m×n)各列的三維垂直條形圖,條以垂直方向顯示bar3h繪制矩陣Y(m×n)各列的三維垂直條形圖,各條以水平方式顯示area繪制向量的堆棧面積圖35條形圖舉例集合式條形圖的繪制>>y=[12345678910]>>bar(y)36(2)餅形圖在統(tǒng)計學中,人們經常要用到餅形圖來表示各個統(tǒng)計量占總量的份額,餅形圖可以顯示向量或矩陣中的元素占所有元素總和的百分比,MATLAB提供了pie函數(shù)和pie3函數(shù),分別用于繪制二維餅形圖和三維餅形圖。37(3)離散型數(shù)據圖MATLAB7提供了一系列適于表現(xiàn)離散型數(shù)據的函數(shù)。其中常用的主要有stem函數(shù)、stem3函數(shù)和stairs函數(shù)。38離散型數(shù)據圖舉例使用stem(y)函數(shù)來繪制句柄狀圖形。>>y=rand(20,1);>>stem(y)>>39(4)方向和速度矢量圖形MATLAB7提供了一些函數(shù)用于繪制方向矢量和速度矢量圖形,這些函數(shù)有compass、feather、quiver和quiver3。函

數(shù)功

述compass顯示極坐標圖形中的極點發(fā)散出來的矢量圖feather顯示從一條水平線上均勻間隔的點所發(fā)散出來的矢量圖quiver顯示由(u,v)矢量特定的二維矢量圖

quiver3顯示由(u,v,w)矢量特定的三維矢量圖40方向和速度矢量圖形舉例

用compass函數(shù)繪制矢量圖形:>>w=0:0.1:6;>>z=sin(w).*exp(j*w);>>compase(z)>>41(5)等高線的繪制等高線函數(shù)為創(chuàng)建、顯示并標注由一個或多個矩陣確定的等值線。函

數(shù)

名功

述clabel使用等值矩陣生成標注,并將標注顯示在當前圖形contour顯示矩陣Z的二維等高線圖contour3顯示矩陣Z的三維等高線圖contourf顯示矩陣Z的二維等高線圖,并在各等高線之間用實體顏色填充contourc用于計算由其他等高線函數(shù)調用的等值矩陣meshc創(chuàng)建一個與二維等高線圖匹配的網線圖surfc創(chuàng)建一個與二維等高線圖匹配的曲面圖42等高線的繪制舉例使用contour函數(shù)繪制等高線圖形:

>>[x,y,z]=peaks;>>contour(x,y,z)>>三維圖形的繪制三.等高線圖的繪制例:>>[X,Y,Z]=peaks(30);>>subplot(2,2,1)>>surf(X,Y,Z)>>title('演示山峰的三維曲面圖')>>subplot(2,2,2)>>contour(X,Y,Z,5)>>title('演示山峰的等高線圖')>>subplot(2,2,3)>>contourf(Z,5)>>title('在相鄰等高線之間用顏色填充')>>subplot(2,2,4)>>[C,h]=contour(Z,5);>>clabel(C,h)>>title('為等高線添加高度值')

4344視點控制舉例view函數(shù)的使用:>>[X,Y]=meshgrid([-5:0.2:5]);>>Z=exp(0.5*(X.^2-Y.^2));>>surf(X,Y,Z)>>view(30,60)>>45光照控制舉例本例首先繪制一個膜面圖,然后使用位置向量[0-21]設置光源的方向。

>>z=peaks(50);>>surf(z)>>light('Position',[0.5-32])>>46繪制圖形的圖形框架窗口對象MATLAB7語言中實現(xiàn)句柄訪問的函數(shù)函

數(shù)

名功

述gca獲得當前坐標軸對象的句柄gcbf獲得當前正在執(zhí)行調用的圖形對象的句柄gcbo獲得當前正在執(zhí)行調用的對象的句

溫馨提示

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

評論

0/150

提交評論