1. 程式人生 > >matlab的legend用法

matlab的legend用法

用Matlab畫圖時,有時候需要對各種圖示進行標註,例如,用“+”代表A的運動情況,“*”代表B的運動情況。

legend函式的基本用法是:

LEGEND(string1,string2,string3, …)

分別將字串1、字串2、字串3……標註到圖中,每個字串對應的圖示為畫圖時的圖示。

例如:

plot(x,sin(x),’.b’,x,cos(x),’+r’)

legend(‘sin’,’cos’)這樣可以把”.”標識為’sin’,把”+”標識為”cos”

還可以用LEGEND(…,’Location’,LOC) 來指定圖例標識框的位置
這些是Matlab help檔案。後面一段是對應的翻譯和說明

    'North'              inside plot box near top
    'South'              inside bottom
    'East'               inside right
    'West'               inside left
    'NorthEast'          inside top right (default)
    'NorthWest      

matlab繪圖中legend的終極用法

高階用法1:指定legend顯示的位置:

legend({‘str1’,’str2’,’strn’},1);

legend({‘str1’,’str2’,’strn’},2);

legend({‘str1’,’str2’,’strn’},’Location’,’SouthEast’);

高階用法2:指定顯示某幾條曲線的legend:

方法1:

例如你有25條曲線,想顯示其中1,6,11,16,21的legend,則

for i = [2:5 7:10 12:15 17:20 22:25]
set(get(get(H(i),’Annotation’),’LegendInformation’),’IconDisplayStyle’,’off’);
end
legend(‘1’,’6’,’11’,’16’,’21’);

方法2:

H = plot(data);
legend(H([1 6 11 16 21],’1,’6’,’11’,’16’,’21’);

高階用法3:legend橫排

hl = legend(H([1 6 11 16 21],’1,’6’,’11’,’16’,’21’);
set(hl,’Orientation’,’horizon’)

高階用法4:不顯示方框:

hl = legend(H([1 6 11 16 21],’1,’6’,’11’,’16’,’21’);
set(hl,’Box’,’off’);

matlab中legend函式在新增圖例時的使用方法

功能 :

在圖形上新增圖例。該命令對有多種圖形物件型別(線條圖,條形圖,餅形圖等)的視窗中顯示一個圖例。對於每一線條,圖例會在使用者給定的文字標籤旁顯示線條的線型,標記符號和顏色等。當所畫的是區域(patch或surface物件)時,圖例會在文字旁顯示錶面顏色。Matlab在一個座標軸中僅僅顯示一個圖例。圖例的位置有幾個因素決定,像遮擋的物件等,使用者可以用滑鼠拖動圖例到恰當的位置,雙擊標籤可以進入標籤編輯狀態。

用法:

legend(‘string1’,’string2’,…) 用指定的文字string在當前座標軸中對所給資料的每一部分顯示一個圖例。

legend(h,’string1’,’string2’,…) 用指定的文字string在一個包含於控制代碼向量h中的圖形顯示圖例。用給定的資料對相應的圖形物件加上圖例。

legend(string_matrix) 用字元矩陣參量string_matrix的每一行字串作為標籤。

legend(h,string_matrix) 用字元矩陣參量string_matrix的每一行字串作為標籤給包含於控制代碼向量h中的相應的圖形物件加標籤。

legend(axes_handle,…) 給由控制代碼axes_handle指定的座標軸顯示圖例。

legend(‘off’) 從當前的座標軸,或是由axes-handle指定的座標軸中除掉圖例。

legend(axes_handle,’off’) 從由axes_handle指定的座標軸中除掉圖例。legend_handle = legend 返回當前座標軸中的圖例控制代碼,若座標軸中沒有圖例存在,則返回空 向量。

legend 對當前圖形中所有的圖例進行重新整理。

legend(legend_handle) 對由控制代碼legend_handle指定的圖例進行重新整理。

當在一個座標系上畫多幅圖形時,為區分各個圖形,Matlab提供了圖例的註釋說明函式。其格式如下:

legend(字串1,字串2,字串3,…,引數)  

  引數字串的含義如下表所示:  

引數字串          含 義

0          儘量不與資料衝突,自動放置在最佳位置

1 放置在圖形的右上角

2 放置在圖形的左上角

3 放置在圖形的左下角

4 放置在圖形的右下角

-1                 放置在圖形視窗的外右邊

  此函式在圖中開啟了一個註釋視窗,依據繪圖的先後順序,依據輸出字串對各個圖形進行註釋說明。如字串1表示第一個出現的線條,字串2表示第二個出現的線條,引數字串確定註釋視窗在圖形中的位置。同時,註釋視窗也可以用滑鼠拖動,以便將其放置在一個合適的位置。 

【 例 】在同一座標內,繪出兩條函式曲線並有圖解註釋。

x=0:0.2:12;

  >>plot(x,sin(x),‘-’,x,1.5*cos(x),‘:’) 

  legend(‘First’,‘Second’,-1);    %強行將註釋視窗放在圖形視窗的外右邊。 

程式執行的結果如圖所示:
這裡寫圖片描述