2016-02-06 65 views
0

我有兩個數組說,X和Y具有相同的維數。我可以繪製每個點(x,y)plot(X,Y)。但是,我怎樣才能根據他們給定的標籤給他們着色?假設X = [3,4,2,5,6],Y = [2,2,1,5,6],並且標籤= [1,2,2,[1,2],2],並且標籤= [1,2,4,5,6] 。在這裏,我所要做的就是用藍色和標籤= 2中的點用紅色標記帶有標籤= 1的點。我怎樣才能做到這一點?在Matlab中的數據圖

+0

退房'散射()'。另外,你是指'label = [1,2,2,[1,2],2]',特別是[1,2]部分是什麼意思? – Oleg

+0

@Oleg標籤是一個單元陣列。這裏[1,2]表示該點屬於兩個標籤。 – biswasJUCSE

+0

不完全確定我明白這個問題,但會保持工作嗎?通過說「hold on」,你可以根據你想要的數據顏色在同一個屏幕上製作不同的地塊。 – MANA624

回答

0

有幾種方法來優化這個代碼,甚至逃脫不使用循環,但這應該讓你開始

for i=1:length(X) 
    xdot=X(i) 
    ydot=Y(i) 
    Ldot=label(i) 
    col=[1 0 0;0 0 1]; 
    plot(xdot,ydot,'color',col(Ldot,:),'marker','o'); 
    hold on 
end