我有一個有7個條目的圖例,其中一些在一個子圖上,一些在另一個上,另一些對兩個圖都是常見的。我已經設法使用我在網上找到的一些幫助,將所有這些條目合併到一個圖例中,這非常棒。Matlab多列圖例和子圖
我現在唯一的問題是,每個條目的字符串都很長,所以我理想的是需要它們在第2列中,第7個條目位於圖例底部的中間位置。我發現的各種選項做多圓柱傳說:
- Code for a multicolumn legend in Matlab
- http://www.mathworks.co.uk/matlabcentral/fileexchange/27389-columnlegend
- http://www.mathworks.co.uk/matlabcentral/fileexchange/29248-gridlegend-a-multi-column-format-for-legends
但我不知道如何將它們與我的方式組合已經制定了如何做傳說。
這是我到目前爲止MWE:
xdata=1:1:10;
ydata=0:0.1:0.9;
% Line colours
cm=[32 114 214;145 205 237;0 129 63;247 217 9;255 127 0;184 18 21];
cm=cm/255;
h1=subplot(2,1,1);
l1=line(xdata,ydata,'Color',cm(1,:));
l2=line(xdata,ydata,'Color',cm(2,:));
l3=line(xdata,ydata,'Color',cm(3,:));
l5=line(xdata,ydata,'Color',cm(5,:));
l7=line(xdata,ydata,'Color','k','LineStyle','--');
h2=subplot(2,1,2);
l4=line(xdata,ydata,'Color',cm(4,:));
l6=line(xdata,ydata,'Color',cm(6,:));
line(xdata,ydata,'Color','k','LineStyle','--');
hL=legend(h2,[l1,l2,l3,l4,l5,l6,l7],{'Second/Multi-year La Niña','First/Single-year La Niña','Neutral ENSO years','First/Single-year El Niño','El Niño years','Second/Multi-year El Niño','All Years (1901-2011)'},'Location','SouthOutside','Orientation','horizontal');
set(hL,'Units','centimeters');
Lpos=get(hL,'Position');
Lpos(1)=0;
Lpos(2)=0;
set(hL,'Position',Lpos);
我的實際數據不重疊,所以你可以看到所有的線。舉例來說,這樣做更容易。
任何人都可以幫我解決傳奇所需的佈局嗎?很可能我可以使用我已經找到的3個選項中的一個,但我並不真正瞭解他們做得足夠好以適用於我的情況。
您可以將'方向'圖例選項設置爲'垂直'嗎? – Brian
我可以做,但是我得到了一個很長的垂直傳說,上面有7條線。我想擁有像我描述的傳奇,所以它不佔用太多的空間,因爲這個數字正在進入期刊文章。 – emmalgale