我已經設置的點(矩陣NX1)和組此點(矩陣NX1)。我想繪製這個點(沒有問題,我這樣做:plot(points, groups, 'o');
),但我想爲每個組設置獨特的顏色。我怎樣才能做到這一點?現在我只有兩個組(1,2)。MATLAB情節不同顏色
回答
使用邏輯索引選擇要
figure;
hold all; % keep old plots and cycle through colors
ind = (groups == 1); % select all points where groups is 1
% you can do all kind of logical selections here:
% ind = (groups < 5)
plot(points(ind), groups(ind), 'o');
好的,如果點和組的維度是兩個,我應該怎麼做?我怎樣才能只用第一列繪製一個情節(點(ind),組(ind),'o'); – Yekver
@Yekver:我不知道我是否明白你想要什麼。您可以通過'points(ind,1)'索引第一列的所有行。如果你想從矩陣的第一列創建一個索引向量,你可以使用'ind =(groups(:,1)== 1);' – groovingandi
'points(ind,1)' - 這有幫助!非常感謝! – Yekver
假設組的數量是已知的先驗:
plot(points(find(groups == 1)), groups(find(groups == 1)), points(find(groups == 2)), groups(find(groups == 2)));
find
會給你的groups
對於該條件成立的所有指數。對於每個可能的值groups
,可以使用find
的輸出作爲points
和groups
的子向量。
當您使用plot
繪製多個x-y組合時,它將爲每個組合使用不同的顏色。
或者,你可以只選擇每一個顏色明確:
hold on
plot(points(find(groups == 1)), groups(find(groups == 1)), 'r')
plot(points(find(groups == 2)), groups(find(groups == 2)), 'y')
最後,還有一個方式,通過顏色的自動告訴陰謀循環,這樣就可以調用plot
不指定顏色,但該方法逃避我。
如果您設置了「全部保留」,則每次調用繪圖時它都會添加到同一數字,但會循環顯示默認的顏色映射和線條樣式。 – Step
鑑於一些隨機數據點:
points = randn(100,1);
groups = randi([1 2],[100 1]);
這裏有一些更一般的建議:
g = unique(groups); %# unique group values
clr = hsv(numel(g)); %# distinct colors from HSV colormap
h = zeros(numel(g),1); %# store handles to lines
for i=1:numel(g)
ind = (groups == g(i)); %# indices where group==k
h(i,:) = line(points(ind), groups(ind), 'LineStyle','none', ...
'Marker','.', 'MarkerSize',15, 'Color',clr(i,:));
end
legend(h, num2str(g,'%d'))
set(gca, 'YTick',g, 'YLim',[min(g)-0.5 max(g)+0.5], 'Box','on')
xlabel('Points') ylabel('Groups')
如果你有機會到統計工具箱,還有就是簡化了所有上述的一個調用的函數:
gscatter(points, groups, groups)
最後,在這種情況下,這將是更適合顯示Box plot:
labels = num2str(unique(groups),'Group %d');
boxplot(points,groups, 'Labels',labels)
ylabel('Points'), title('Distribution of points across groups')
- 1. 情節不同顏色
- 2. 情節不同顏色的
- 3. MATLAB情節不同顏色的不同而改變
- 4. 保持顏色縮放相同的不同情節 - Python
- 5. 具有不同顏色的線對MATLAB
- 6. 不同顏色的直方圖-matlab
- 7. 不同顏色的誤差棒Matlab 2014b
- 8. 不同的標記在MATLAB情節
- 9. 在不同顏色的情節中繪製多個fitdist對象?
- 10. Matlab:顏色編碼一個3D劇情
- 11. 顏色圖形節點不同
- 12. 不同顏色的graphviz節點
- 13. 給MATLAB不更新下一個缺省顏色爲特定情節
- 14. 不同顏色
- 15. MATLAB標題不同部分的不同顏色
- 16. 情節在MATLAB
- 17. Matlab。情節
- 18. 情節MATLAB
- 19. 情節MATLAB
- 20. rgb透明顏色的情節和R
- 21. 散景情節條件背景顏色
- 22. [R情節分配點顏色行名
- 23. GGPLOT2方面設置的情節顏色
- 24. 改變顏色隱含情節
- 25. 邊框顏色 - R的情節
- 26. MATLAB彩條 - 顏色相同,換算值
- 27. Matlab中的單色顏色
- 28. 自定義顏色條的顏色MATLAB
- 29. 如何在MATLAB合併不同情節,相同的Y軸
- 30. 顏色點雲 - Matlab
你所說的 「羣體」 是什麼意思? –
我的意思是,我有例如100點的[0..10],如果點<= 5它是組是一,否則兩個。組 - 它是座標 – Yekver