MATLAB圖形輸出到word中

 

§5 MATLAB圖形功能

 

MATLAB

有很強的圖形功能,可以方便地實現數據的視覺化。強大的計算功能與圖形功能相結合爲MATLAB在科學技術和教學方面的應用提供了更加廣闊的天地。下面着重介紹二維圖形的畫法,對三維圖形只作簡單敘述。

 

5.1

二維圖形的繪製

5.1.1

基本形式

二維圖形的繪製是

MATLAB語言圖形處理的基礎,MATLAB最常用的畫二維圖形的命令是plot,看兩個簡單的例子:

>> y=[0 0.58 0.70 0.95 0.83 0.25];

>> plot(y)

生成的圖形見圖

5-1,是以序號Image395.gif爲橫座標、數組y的數值爲縱座標畫出的折線。

>> x=linspace(0,2*pi,30); %

生成一組線性等距的數值

>> y=sin(x);

>> plot(x,y)

生成的圖形見圖

5-2,是Image396.gif30個點連成的光滑的正弦曲線。

Image397.gifImage398.gif

 

                             圖5-2

5.1.2

多重線

在同一個畫面上可以畫許多條曲線,只需多給出幾個數組,例如

>> x=0:pi/15:2*pi;

>> y1=sin(x)

>> y2=cos(x)

>> plot(x,y1,x,y2)

則可以畫出圖

5-3。多重線的另一種畫法是利用hold命令。在已經畫好的圖形上,若設置hold onMATLA將把新的plot命令產生的圖形畫在原來的圖形上。而命令hold off 將結束這個過程。例如:

>> x=linspace(0,2*pi,30); y=sin(x); plot(x,y)

先畫好圖

5-2,然後用下述命令增加cos(x)的圖形,也可得到圖5-3

>> hold on

>> z=cos(x); plot(x,z)

>> hold off

Image399.gifImage400.gif

5-4

5.1.3

線型和顏色

MATLAB

對曲線的線型和顏色有許多選擇,標註的方法是在每一對數組後加一個字符串參數,說明如下:

線型

線方式 - 實線 :點線 -. 虛點線 - - 波折線。

線型

點方式 . 圓點 +加號 * 星號 x x o 小圓

顏色

y黃; r紅; g綠; b藍; w白; k黑; m紫; c.

以下面的例子說明用法:

>> x=0:pi/15:2*pi;

>> y1=sin(x); y2=cos(x);

>> plot(x,y1,’b:+’,x,y2,’g-.*’)

可得圖形

5-4

5.1.4

網格和標記

在一個圖形上可以加網格、標題、

x軸標記、y軸標記,用下列命令完成這些工作。

>> x=linspace(0,2*pi,30); y=sin(x); z=cos(x);

>> plot(x,y,x,z)

>> grid

>> xlabel(‘Independent Variable X’)

>> ylabel(‘Dependent Variables Y and Z’)

>> title(‘Sine and Cosine Curves’)

它們產生圖

5-5

Image401.gif

                                           圖5-5

也可以在圖形的任何位置加上一個字符串,如用:

>> text(2.5,0.7,’sinx’)

表示在座標

x=2.5, y=0.7處加上字符串sinx。更方便的是用鼠標來確定字符串的位置,方法是輸入命令:

>> gtext(‘sinx’)

在圖形窗口十字線的交點是字符串的位置,用鼠標點一下就可以將字符串放在那裏。

 

5.1.5

座標系的控制

在缺省情況下

MATLAB自動選擇圖形的橫、縱座標的比例,如果你對這個比例不滿意,可以用axis命令控制,常用的有:

axis([xmin xmax ymin ymax]) [ ]

中分別給出x軸和y軸的最大值、最小值

axis equal

axis(‘equal’) x軸和y軸的單位長度相同

axis square

axis(‘square’) 圖框呈方形

axis off

axis(‘off’) 清除座標刻度

還有

axis auto axis image axis xy axis ij axis normal axis on axis(axis)

用法可參考在線幫助系統。

5.1.6

多幅圖形

可以在同一個畫面上建立幾個座標系

, subplot(m,n,p)命令;把一個畫面分成m×n個圖形區域, p代表當前的區域號,在每個區域中分別畫一個圖,

>> x=linspace(0,2*pi,30); y=sin(x); z=cos(x);

>> u=2*sin(x).*cos(x); v=sin(x)./cos(x);

>> subplot(2,2,1),plot(x,y),axis([0 2*pi –1 1]),title(‘sin(x)’)

>> subplot(2,2,2),plot(x,z),axis([0 2*pi –1 1]),title(‘cos(x)’)

>> subplot(2,2,3),plot(x,u),axis([0 2*pi –1 1]),title(‘2sin(x)cos(x)’)

>> subplot(2,2,4),plot(x,v),axis([0 2*pi –20 20]),title(‘sin(x)/cos(x)’)

共得到

4幅圖形,見圖5-6.

5-6

5.2

三維圖形

限於篇幅這裏只對幾種常用的命令通過例子作簡單介紹

.

5.2.1

帶網格的曲面

作曲面z=f(x,y)的圖形

Image403.gif

用以下程序實現

:

>> x=-7.5:0.5;7.5;

>> y=x;

>> [X,Y]=meshgrid(x,y); (3

維圖形的X,Y數組)

>> R=sqrt(X.^2+Y.^2)+eps; (

eps是防止出現0/0)

>> Z=sin(R)./R;

>> mesh(X,Y,Z) (3

維網格表面)

畫出的圖形如圖

5-7. mesh命令也可以改爲surf, 只是圖形效果有所不同,讀者可以上機查看結果。

Image404.gif

 5-8

5.2.2

空間曲線

作螺旋線 x=sint, y=cost, z=t

用以下程序實現

:

>> t=0:pi/50:10*pi;

>> plot3(sin(t),cos(t),t) (

空間曲線作圖函數, 用法類似於plot)

畫出的圖形如圖

5-8

5.2.3

等高線

contour contour3 畫曲面的等高線,如對圖5-7的曲面, 在上面的程序後接

contour(X,Y,Z,10)

即可得到10條等高線。

5.2.4

其它

較有用的是給三維圖形指定觀察點的命令

view(azi,ele)azi 是方位角, ele 是仰角.

缺省時

azi=Image406.gifele=Image407.gif.

 

5.3

圖形的輸出

在數學建模中,往往需要將產生的圖形輸出到

Word文檔中。通常可採用下述方法:

首先,在

MATLAB圖形窗口中選擇【File】菜單中的【Export】選項,將打開圖形輸出對話框,在該對話框中可以把圖形以emfbmpjpgpgm等格式保存。然後,再打開相應的文檔,並在該文檔中選擇【插入】菜單中的【圖片】選項插入相應的圖片即可。

下一頁 返回目錄

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章