2010-03-20 126 views
20

我有兩組數據,(Ax,Ay; Bx,By)。我想在不同顏色的散點圖上繪製這兩個數據集,但似乎無法使其工作,因爲scatter()不像plot()那樣工作。是否有可能做到這一點?MATLAB - 在散點圖上繪製多個數據集

我試過......

scatter(Ax, Ay, 'g', Bx, By, 'b') 

而且

scatter(Ax, Ay, 'g') 
scatter(Bx, By, 'b') 

第一種方法返回一個錯誤。後者僅繪製Bx/By數據。

+0

另請參閱此問題:http://stackoverflow.com/questions/386712/is-there-any-way-to-silence-the-hold-function-in-matlab/386765#386765 – Jonas

回答

33

嘗試使用hold on與第二個示例。

+0

這樣做的伎倆!非常感謝您的快速和簡潔的迴應。非常感激! – Mark

+0

這可能會導致一些頭痛,如果你試圖將它與添加圖例相結合。看[這個問題](http://stackoverflow.com/q/33059911/478116)。 – 3VYZkz7t

4

另一種選擇是使用gscatter。該參數是不同的,但它有時比scatter(...); hold on; scatter(...);

5

情節更加有用(AX,AY,「G」) 產生的散點圖綠點

如果你想要更大的圈子

,可以使用

情節(AX,AY, 'G。', 'MarkerSize',XX)%XX = 20或任何

個要使空心圓

圖(AX,AY, '走出去')

如你所知,情節可以鏈接,這樣你就可以做一個有去

plot(ax,ay,'go',bx,by,'bo')

plot和scatter的區別在於scatter可以讓你指定標記大小,但是你並不是要求在這裏做。