2014-09-23 80 views
0

我是新來matlab gui desgining。我試圖從工作區繪製變量。我必須在不同顏色的同一個地塊上繪製三個不同的變量。我的代碼看起來喜歡這樣的:嘗試如何在matlab中的evalin函數中調用圖的顏色?

evalin('base',['plot(',a,',',x,')']) 
grid on 
hold on 
evalin('base',['plot(',a,',',y,')']) 
hold on 
evalin('base',['plot(',a,',',z,')']) 

捕前 errordlg(... ex.getReport( '基本'), '錯誤產生線性圖', '模式') 結束

如何我可以在evalin命令中進行更改,以便爲每個變量集合繪製不同顏色的圖。請幫助

+0

我從來沒有使用evalin,但你試圖C = [1 0 0]; evalin('base',['plot(',a,',',z,',',Color,'C')']) – 2014-09-23 09:13:54

+0

是的,它表示未定義函數或變量顏色 – gaurav 2014-09-23 10:02:08

+0

如果它說可能我在我發佈的代碼中犯了一些錯誤。不要複製它,但將顏色屬性設置爲C. – 2014-09-23 10:26:18

回答

0

最簡單的方法是將hold on命令替換爲hold all,這將導致稍後繪圖命令循環顯示默認的繪圖顏色集。

(注:你只需要一個hold on/hold all這裏)

如果您需要選擇特定的顏色供您地塊,您可以指定線條的格式,就像你在一個正常的plot命令。請記住,要在一個字符串中做單引號,你必須使用兩個('')來避開它。

plot(1:10,1:10,'r'); 

變得

evalin('base','plot(1:10,1:10,''r'')') 
+0

謝謝,它最終以這種方式evalin('base',['plot(',a,',',x,',''r'')'] ) 全部保留 evalin('base',['plot(',',',',',''b'')']) 全部保留 evalin('base',['plot( ',a,',',z,','''')']) grid on – gaurav 2014-09-23 11:13:51