11/06/2006

9.3.5線體參數設定

除利用前述之線碼以變換線條之顏色、點標及線型外,一般繪線仍可提供不同參數,以變更線條之粗細或點標之顏色,這些又稱為線之屬性,立即之屬性可以利用下列指令得到:

get(gcf) 或 get(gca)

就曲線之外形及顏色為例,則可用表9.3所列之參數設定之:

表9.3 繪線參數之功能









參數名稱*參數值(例)備註
LineWidth(0.5) 標示線寬(點數)
LineStyle-, --, :, -., none (-)標示線型
Marker'd+x*'標示點標形狀
MarkerEdgeColor'k'標示點標邊線之顏色(參考表1)
MarkerFaceColor'g'標示點標內部之顏色(參考表1)
MarkerSize(6)點標之大小(點數)

*參數名稱在plot()內使用時,必須用 ' ' 號括起來,其後面則填以適當值。參數值若為色碼時,亦須用 ' ' 號括起來。其內容可參考表1。

利用plot()繪圖時,可將上述參數置入括號之參數項中。執行時,其順序前後並不重要,但必須成對。Demo_8之程式為設定線條粗細為4,點標線為黑色,內填黃色,大小為15。其結果如圖9.16。


%Demo_8 Draw the size & color of marker
x = -pi:pi/10:pi;
y = sin(x)+ sin(x);
plot(x,y,'--rd','LineWidth',4,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','y',...
'MarkerSize',15);





執行繪圖程式時,並若未事先參數設定,則仍然可以利用表9.3所列之指令進行事後設定。這種事後設定之功能可供程序控制,利用顏色、形狀之變化,顯示程式之進度。程式demo_8x是一個設定參數之例子,其中用到pause 指令,是讓程式暫停的意思,必須按任何鍵才能繼續。圖9.17是繪圖指令繪出函數後,再利用set()設定點標之大小及線型而呈現為圖9.18。


%Demo_8x Parameter settings
t = 0:0.2:4*pi;
y = exp(-t/6).*cos(t);
h = plot(t, y); % h 為曲線的握把
pause;
set(h, 'MarkerSize', 25); % 線標的大小改成25
set(h, 'linewidth', 2); % 曲線寬度改為2
set(h, 'linestyle', ':'); % 設為虛線
set(h, 'Marker', 'd'); % 點標改成變形







除設最大與最小值外,各座標軸之區間亦可自行設定。此時必須利用'XTick'與'XTickLabel'這兩個參數,前者是要設定之區間值,以一列矩陣代表,後者為文字串之對應,其大小兩者應相同。由於後者為文字串陣列,故必須用大括號{}括起來。程式demo_9是其例,圖9.19為其結果。注意僅有X軸受影響,縱軸係MATLAB自動設定。若要自行設定,則可設立其對應之參數:'YTick'與'YTickLabel'。

%Demo_9 Change ticks of x-axis
x = -180:10:180;
y = sin(x*pi/180);
plot(x,y) %先行繪圖
set(gca,'XTick',-180:90:180); %重設目前X軸參數之範圍
%重設X軸之內標
set(gca,'XTickLabel',{'-180','-90','0','90','180'})
grid on;