2012-03-05 34 views
0

舉個例子,我想要做的恰恰是以下幾點:是否有可能在Matlab中循環MarkerFaceColor?

cc=gray(100); 

for i=1:100 
    plot(i,i,'o','MarkerFaceColor',cc(i,:,:)); 
    hold on; 
end; 

...但沒有for循環,即自動重複 - 是這樣的:

i=1:100; 
plot(i,i,'o','MarkerFaceColor',cc(i,:,:)); 

顯然以下工作:

i=1:100; 
plot(i,i,'o'); 

...但我希望matlab自動迭代每個新繪製的點的顏色空間。實際上,我有一個更復雜的例子,它使用了嵌入式for循環,但這需要很長的時間來繪製。注:我真的沒有matlab專家。

無論如何,我希望這是可能的,如果是這樣,那麼正確的語法可能是什麼。

感謝您的閱讀,你可能有任何見解,

乾杯,

本。

回答

0

檢查scatter功能。它需要一個額外的顏色矢量,你可以從色彩映射中自己創建。添加'填充'選項作爲最後一個參數將使填充的標記。

所以,我認爲類似於下面的東西應該工作:

cm = gray(100); 
x = 1:100; 
scatter(x,x,[],cm,'filled') 
+0

感謝robince,我認爲這可能做的工作。(只是驗證:-)) – 2012-03-05 21:28:04

相關問題