我想給整個情節傳奇。我知道很多情況下聽起來很容易。但是這讓我對這個特例感到困惑。如何在Matlab中同時顯示補丁填充和圖線的圖例?
figure;
p1 = plot(1:3,[y1,y2,y3],1:2,y4,1:3,[y5,y6,y7,y8,y9])
% Add lines
hold on
h1 = line([1 2 3],[10 10 10]);
h2 = line([1 2 3],[100 100 100]);
% Set properties of lines
set([h1 h2],'LineStyle','none')
% Add a patch
p2 = patch([1 3 3 1],[10 10 100 100],[.85 .85 .85],'LineStyle','none','FaceAlpha',0.5,'DisplayName','Lab Measurement');
hold off
set(gca, 'children',flipud(get(gca,'children')),'XTickLabel', {'L1' ' ' ' ' ' ' ' ' 'L2' ' ' ' ' ' ' ' ' 'L3'},'YScale', 'log')
NameArray = {'Marker','Color','LineStyle','DisplayName'};
ValueArray = {'o','[0.2 0.2 0.2]','-','Var1';...
'+','[0.2 0.2 0.2]','-','Var2';...
'*','[0.2 0.2 0.2]','-','Var3';...
'.','[0.2 0.2 0.2]','-','Var4';...
'x','[0.2 0.2 0.2]','-','Var5';...
's','[0.2 0.2 0.2]','-','Var6';...
'd','[0.2 0.2 0.2]','-','Var7';...
'^','[0.2 0.2 0.2]',':','Var8';...
'h','[0.2 0.2 0.2]','-.','Var9'};
set(p1,NameArray,ValueArray)
當我試圖通過給
legend(p1)
或
legend(p2)
這看起來是什麼樣子時,我嘗試傳說(P2)
它只是爲每個部分都做得很好,但不是在一起。
我還通過在命令賦予傳奇試圖
legend([p2 p1],{'Lab Measurement','Var1','Var2','Var3','Var4','Var5','Var6','Var7','Var8','Var9'})
或
legend([p2 p1],{'Lab Measurement',{'Var1','Var2','Var3','Var4','Var5','Var6','Var7','Var8','Var9'}})
它沒有工作。任何幫助將不勝感激!
你顯示的下一個錯誤是什麼? – Suever
使用horzcat時出錯 串聯的矩陣的大小不一致。 – Orangeblue
你能描述傳說應該是什麼樣子嗎? – codeaviator