11/06/2006

9.3 繪圖參數的設定

每人都要有一個名字或身份證號碼,除容易呼叫指定外,在眾多圖子圖孫中可以分出你我。所以同時繪製許多圖時,都必須給予一個握把,以為識別。

9.3.1圖的握把(handler)


握把的語法如下:

h = plot(...)

此處左邊之h即為所給之握把名稱。經過這樣命名之後,h會被指定一個值,其內容如何只是與MATLAB內部作業有關,對於程式而言,只要認定h就代表上述指令執行後所繪之圖。其後,在設定參數值時,可以引用呼叫。握把圖之應用是MATLAB之特點,利用握把之定義可以指定圖中之任何物件,包括座標參數及所繪製曲線之屬性及未來選單或特定之事件之處理等。後者讀者可另參考相關之入門書籍,本文不另敘述。

9.3.2 線段屬性之設定



圖9.12所示為利用plot()指令同時繪製三條曲線之情形。若沒有任何添加其他顏色屬性參數,程式會自動給予不同內定的顏色。其格式如下:

plot(x, y, 'CLM')

'CLM' 為一字串,其中C、L、M分別代表曲線顏色、曲線型式(Line Styles)及資料點之點標(Markers),其相關值如下表所示。

顏色代碼表









代碼顏色
r紅色
g綠色
b藍色
c青色
m紫色
y黃色
k黑色
w白色

線型代碼表





代碼 線型
- 實線
--折線
:虛線
-.折虛線

標記型碼表














代碼標記名稱
實線
o圖點
*星號
.點形
x叉形
'square'|s方型
'diamond'或d菱形
^向上三角形
v向下三角形
>右向三角形
<左向三角形
'pentagram'或p星形
'hexagram'或h六角形


舉例,若將上圖之三條曲線顏色依序為黑、紅、藍;線型分別為實線、虛線及點虛線;而點標分別為圓點、叉點及加號時,其程式可改善如下,繪出則如圖9.12。


% Demo_4 Draw curves using plot
x=linspace(0,2*pi,50);     %2π之區間分成50等分
plot(x,x.*x,x,x.^3,x,x); %使用line指令
xlabel('Angle(x), radians'); %水平座標名稱
ylabel('y= x^2, x^3, x'); %垂直座標名稱




Demo_4之程式中,CLM之代碼前後順序可以對調,且若不加顏色碼,程式會以預設值設定顏色。點標碼若無法找到適當的對應,亦可直接用英文字代表,如菱形以diamond(或);方形以square(或);星號以star(或)是,可參考列表。

到底圖的握把有什麼好處?


有些人可能心裡會狐疑一會兒,為什麼圖繪出之後,還要給它一個握把。到底有何用處?事實上這個握把之功能多多,正如每一個人都要命一個名字一樣或給一個身份證號碼,在以後處理時比較容易辨認。下面之說明可以澄清這個用途: