[轉]matlab中plot用法

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

 

5.1 二維圖形的繪製 函數

5.1.1 基本形式 spa

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

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

>> plot(y) 文檔

生成的圖形見圖5-1,是以序號收集:matlab中plot用法爲橫座標、數組y的數值爲縱座標畫出的折線。 字符串

>> x=linspace(0,2*pi,30); % 生成一組線性等距的數值 數學

>> y=sin(x); it

>> plot(x,y) 基礎

生成的圖形見圖5-2,是收集:matlab中plot用法30個點連成的光滑的正弦曲線。

收集:matlab中plot用法收集:matlab中plot用法


                             圖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

收集:matlab中plot用法收集:matlab中plot用法

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

收集:matlab中plot用法

                                           圖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.2 三維圖形

限於篇幅這裏只對幾種經常使用的命令經過例子做簡單介紹.

5.2.1 帶網格的曲面

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

收集:matlab中plot用法

用如下程序實現:

>> 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, 只是圖形效果有所不一樣,讀者能夠上機查看結果。

收集:matlab中plot用法

 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=收集:matlab中plot用法ele=收集:matlab中plot用法.

 

5.3 圖形的輸出

在數學建模中,每每須要將產生的圖形輸出到Word文檔中。一般可採用下述方法:

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

相關文章
相關標籤/搜索