Matlab 谱系图聚类颜色修改:使用 dendrogram 和 set 函数
要改变谱系图中不同聚类的颜色,可以使用 dendrogram 函数的输出参数来获取每个聚类的索引,并通过 set 函数来更改每个聚类的颜色。
下面是一个示例代码,演示如何更改谱系图中不同聚类的颜色:
% 创建一个样本数据
X = [randn(100,2)+ones(100,2);randn(100,2)-ones(100,2)];
% 对样本数据进行层次聚类
Z = linkage(X,'ward');
% 绘制谱系图,并获取每个聚类的索引
H = dendrogram(Z);
% 获取每个聚类的颜色索引
colorIdx = cluster(Z,'Maxclust',3);
% 获取谱系图中的所有叶子节点
leafNodes = unique([H(:).YData]);
% 根据颜色索引更改每个聚类的颜色
for i = 1:numel(leafNodes)
set(H(i),'Color',colorIdx(leafNodes(i),:)./max(colorIdx(:)));
end
运行以上代码后,将会绘制一个谱系图,其中每个聚类的颜色将根据聚类的索引值来自动更改。
原文地址: https://www.cveoy.top/t/topic/oxls 著作权归作者所有。请勿转载和采集!