基于Matlab繪制二維和三維圖形以及其他圖形控制函數(shù)的使用方法
Matlab繪圖
強大的繪圖功能是Matlab的特點之一,Matlab提供了一系列的繪圖函數(shù),用戶不需要過多的考慮繪圖的細節(jié),只需要給出一些基本參數(shù)就能得到所需圖形,這類函數(shù)稱為高層繪圖函數(shù)。此外,Matlab還提供了直接對圖形句柄進行操作的低層繪圖操作。這類操作將圖形的每個圖形元素(如坐標軸、曲線、文字等)看做一個獨立的對象,系統(tǒng)給每個對象分配一個句柄,可以通過句柄對該圖形元素進行操作,而不影響其他部分。
本章介紹繪制二維和三維圖形的高層繪圖函數(shù)以及其他圖形控制函數(shù)的使用方法,在此基礎(chǔ)上,再介紹可以操作和控制各種圖形對象的低層繪圖操作。
一.二維繪圖二維圖形是將平面坐標上的數(shù)據(jù)點連接起來的平面圖形??梢圆捎貌煌淖鴺讼担缰苯亲鴺?、對數(shù)坐標、極坐標等。二維圖形的繪制是其他繪圖操作的基礎(chǔ)。
一.繪制二維曲線的基本函數(shù)在Matlab中,最基本而且應(yīng)用最為廣泛的繪圖函數(shù)為plot,利用它可以在二維平面上繪制出不同的曲線。
1. plot函數(shù)的基本用法
plot函數(shù)用于繪制二維平面上的線性坐標曲線圖,要提供一組x坐標和對應(yīng)的y坐標,可以繪制分別以x和y為橫、縱坐標的二維曲線。plot函數(shù)的應(yīng)用格式
plot(x,y) 其中x,y為長度相同的向量,存儲x坐標和y坐標。
例51 在[0 , 2pi]區(qū)間,繪制曲線
程序如下:在命令窗口中輸入以下命令
>> x=0:pi/100:2*pi;
>> y=2*exp(-0.5*x).*sin(2*pi*x);
>> plot(x,y)
程序執(zhí)行后,打開一個圖形窗口,在其中繪制出如下曲線
注意:指數(shù)函數(shù)和正弦函數(shù)之間要用點乘運算,因為二者是向量。
例52 繪制曲線
這是以參數(shù)形式給出的曲線方程,只要給定參數(shù)向量,再分別求出x,y向量即可輸出曲線:
>> t=-pi:pi/100:pi;
>> x=t.*cos(3*t);
>> y=t.*sin(t).*sin(t);
>> plot(x,y)
程序執(zhí)行后,打開一個圖形窗口,在其中繪制出如下曲線
以上提到plot函數(shù)的自變量x,y為長度相同的向量,這是最常見、最基本的用法。實際應(yīng)用中還有一些變化。分別說明:
①
2. 含多個輸入?yún)?shù)的plot函數(shù)
plot函數(shù)可以包含若干組向量對,每一組可以繪制出一條曲線。含多個輸入?yún)?shù)的plot函數(shù)調(diào)用格式為:plot(x1,y1,x2,y2,…,xn,yn)
如下列命令可以在同一坐標中畫出3條曲線。
>> x=linspace(0,2*pi,100);
>> plot(x,sin(x),x,2*sin(x),x,3*sin(x))
當輸入?yún)?shù)有矩陣形式時,配對的x,y按對應(yīng)的列元素為橫坐標和縱坐標繪制曲線,曲線條數(shù)等于矩陣的列數(shù)。
>> x=linspace(0,2*pi,100);
>> y1=sin(x);
>> y2=2*sin(x);
>> y3=3*sin(x);
>> x=[x;x;x]';
>> y=[y1;y2;y3]';
>> plot(x,y,x,cos(x))
x,y都是含有三列的矩陣,它們組成輸入?yún)?shù)對,繪制三條曲線;x和cos(x)又組成一對,繪制一條余弦曲線。
利用plot函數(shù)可以直接將矩陣的數(shù)據(jù)繪制在圖形窗體中,此時plot函數(shù)將矩陣的每一列數(shù)據(jù)作為一條曲線繪制在窗體中。如
>> A=pascal(5)
A =
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
>> plot(A)
3. 含選項的plot函數(shù)
Matlab提供了一些繪圖選項,用于確定所繪曲線的線型、顏色和數(shù)據(jù)點標記符號。這些選項如表所示:
例 用不同的線型和顏色在同一坐標內(nèi)繪制曲線 及其包絡(luò)線。
>> x=(0:pi/100:2*pi)';
>> y1=2*exp(-0.5*x)*[1,-1];
>> y2=2*exp(-0.5*x).*sin(2*pi*x);
>> x1=(0:12)/2;
>> y3=2*exp(-0.5*x1).*sin(2*pi*x1);
>> plot(x,y1,'k:',x,y2,'b--',x1,y3,'rp');
在該plot函數(shù)中包含了3組繪圖參數(shù),第一組用黑色虛線畫出兩條包絡(luò)線,第二組用藍色雙劃線畫出曲線y,第三組用紅色五角星離散標出數(shù)據(jù)點。
4. 雙縱坐標函數(shù)plotyy