我需要爲散點圖的特定點指定某些顏色。我已經寫了這樣的事情:在MATLAB中爲散點圖的某些點指定某些顏色
Color = zeros(size(Check,1),1);
for i = 1:size(Check,1)
if Check(i) == 0
Color(i) = [0.3010 0.7450 0.9330];
elseif Check(i) == 1
Color(i) = [0.4660 0.6740 0.1880];
elseif Check(i) == 2
Color(i) = [0.9290 0.6940 0.1250];
elseif Check(i) == 3
Color(i) = [0.8500 0.3250 0.0980];
elseif Check(i) == 4
Color(i) = [0.6350 0.0780 0.1840];
end
end
scatter(x,y,Color,'filled','s');
要注意的是 'X', 'Y', '顏色' 和 '檢查' 具有相同的尺寸(15000×1)。 '檢查'中的數字是'0','1','2','3'或'4'。我只需要根據我在「檢查」矩陣中的數字爲散點圖分配五種不同的顏色。顏色應該是我在代碼中使用的那些顏色,因爲我需要這個陰謀與我已有的另一個條形圖匹配。任何幫助將不勝感激!
感謝您的回答。它效果很好。但是你知道我可以如何爲這5種不同顏色的散點圖添加一個圖例嗎? – Antonio
嗯,這是一個混亂的方式來做到這一點,但我找不到更乾淨的方法。基本上,我們需要創建5個不同的散點圖,以便圖例條目參考這5個不同的圖。 (x(Check == 1),y(Check == 1),'filled','Cdata',Check(Check == 1));'';'; (x(Check == 2),y(Check == 2),'filled','CData',Check(Check == 2))' ...對3-5做相同的處理 ' hold';' 'legend('1','2','3','4','5');' – user2831602
非常感謝您的回答。我嘗試了你所說的,但它給了我整個傳奇只有一種顏色!你對什麼是錯的有什麼想法嗎?我也使用colormap(Color),但它不起作用。 – Antonio