1. 程式人生 > >matlab中的plot

matlab中的plot

繪製2維圖形

語法

plot(Y)
plot(X1,Y1,...)
plot(X1,Y1,LineSpec,...)
plot(...,'PropertyName',PropertyValue,...)
plot(axes_handle,...)
h = plot(...)
hlines = plot('v6',...)

描述

1、plot(Y):表示如果Y是一個實數,則繪製Y的列與它的索引。如果Y是一個複數,plot(Y)等價於plot(real(Y),imag(Y))。在所有plot的其他用法中,虛分量是被忽略的。

2、plot(X1,Y1,...):繪製所有被Xn和Yn所定義的線。如果僅僅只有Xn或者Yn是一個矩陣,這向量與矩陣的行或列被繪製,這取決於是否向量的行或列的大小與矩陣是否匹配。

3、plot(X1,Y1,LineSpec,...):根據Xn、Yn和LineSpec繪製所有的線,其中LineSpec是線的規格,確定的型別,標記符號和被繪製顏色。你可以將Xn、Yn、LineSpec三元和Xn、Yn兩元進行混合使用:plot(X1,Y1,X2,Y2,LineSpec,X3,Y3)。

4、plot(...,'PropertyName',PropertyValue,...):為所有 lineseries影象物件設定指定屬性值

5、plot(axes_handle,...):用指定控制代碼的座標軸代替當前座標軸。

6、h = plot(...):返回 lineseries影象物件控制代碼的列向量,每行一個控制代碼。

向後相容版本

hlines = plot('v6',...):返回line物件的控制代碼而不是lineseries物件的控制代碼。

備註

當繪製多行時,如果你沒有指定一個顏色,那麼 plot將自動按照當前座標軸的 ColorOrder 屬性所指定的次序迴圈所有顏色。迴圈完ColorOrder所指定的所有顏色後, plot將迴圈在座標軸LineStyleOrder屬性所指定的線的樣式。預設的LineStyleOrder屬性有一個單入口(一個沒有標記的實線)。

Cycling Through Line Colors and Style

預設地,MATLAB在你每次呼叫 plot時都會出重置ColorOrder 屬性和LineStyleOrder屬性。如果你想讓你自己所做的改變一直保留在屬性中,那麼你必須把這些改變定義為預設值。例如:

set(0,'DefaultAxesColorOrder',[0 0 0],...
      'DefaultAxesLineStyleOrder','-|-.|--|:')

設定預設的ColorOrder 屬性是隻能使用黑色,設定預設的LineStyleOrder屬性是可以使用實線、點劃線、虛線和點線樣式。

使用hold all防止顏色和樣式被重置

hold命令的all選項可以防止 在後續plot命令中ColorOrder 和LineStyleOrder屬性被重置。MATLAB繼續迴圈座標軸ColorOrder屬性所定義的顏色。

plot(rand(12,2))
hold all
plot(randn(12,2))

更多資訊

關於plotting的更多資訊參見 Creating Line Plots 和 Annotating Graphs。

關於指定線的顏色和樣式的更多資訊參見 LineSpec。

示例

指定標記的顏色和尺寸

使用 graphics properties你也可以指定其他特徵。

LineWidth --指定線寬

MarkerEdgeColor --指定標記的顏色或者被填充的標記的邊緣顏色(圓形方形,菱形五角星六角星形和四個三角形)。

MarkerFaceColor --指定填充標記物的面的顏色

MarkerSize --用點的單位指定標記的尺寸

例如,下面語句

x = -pi:pi/10:pi;
y = tan(sin(x)) - sin(tan(x));
plot(x,y,'--rs','LineWidth',2,...
                'MarkerEdgeColor','k',...
                'MarkerFaceColor','g',...
                'MarkerSize',10)

然後會產生下面的圖形:

Specifying Tick-Mark Location and Labeling

你可以調整座標軸上每一個 tick的 tick-mark位置和標註,例如:

x = -pi:.1:pi;
y = sin(x);
plot(x,y)
set(gca,'XTick',-pi:pi/2:pi)
set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})

Now add axis labels and annotate the point -pi/4, sin(-pi/4).

增加標題、座標軸標記和註釋

MATLAB可以增加座標軸的標註和標題。例如,從先前的例子中使用影象,增加x和y軸標註

xlabel('-\pi \leq \Theta \leq \pi')
ylabel('sin(\Theta)')
title('Plot of sin(\Theta)')
text(-pi/4,sin(-pi/4),'\leftarrow sin(-\pi\div4)',...
     'HorizontalAlignment','left')

現在通過找到被plot建立的線物件的控制代碼,來改變線的顏色為紅色,然後設定顏色屬性,設定寬度屬性為2.

set(findobj(gca,'Type','line','Color',[0 0 1]),...
    'Color','red',...
    'LineWidth',2)