2015-04-15 81 views
1

我的問題是關於matlab圖的圖例輸入。matlab plot legend variable

我想在圖例中有輸入變量,使它看起來像'A_1 B_2'。 A,1,B和2是變量letter1,number1,letter2,number2中的輸入參數。

回答

1

您可以指定任何名稱作爲圖例的輸入。你的問題似乎真的是關於如何將變量連接成單個字符串。通常,最簡單的方法是使用[]運算符。

figure() 
hold on 
h1 = plot(1:10) 
h2 = plot(5:15) 
legend([letter1,'_',num2str(number1)],... 
     [letter2,'_',num2str(number2)]) 
+0

謝謝,這作品幾乎完美。但並不是所有的數字都是整數,所以我舉例說A_0.5只是0作爲索引,而不是整個A_ {0.5}。怎麼做? – Manuel

+0

你想在'0.5'左右的字面括號嗎?在這種情況下,我會使用'sprintf':'sprintf('%s_%f',letter1,number1)'來構建我的字符串。如果您需要不同的外觀,您可以調整格式說明符。 –

+0

對不起,不是文字大括號。這只是我的習慣。 – Manuel

0

如果是的話,也許你可以將它設置在繪圖命令和標題的結尾,例如:

g <- make_empty_graph() # crate a new canvas to show this example 
plot(g) # just to pup up the canvas created 

標籤:

legend("bottomleft", legend=c("legend1", "legend2", "legend"), lty=c(1,2,3), lwd=c(2.5,2.5,2.5), col=c("black", "burlywood4", "skyblue"))