首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将HAC结果绘制为散点图(scipy linkage)

如何将HAC结果绘制为散点图(scipy linkage)
EN

Stack Overflow用户
提问于 2016-08-10 19:33:26
回答 1查看 1.4K关注 0票数 0

我正在使用scipy链接进行集群。我想知道将结果绘制成散点图的最简单方法是什么:

代码语言:javascript
复制
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt

from scipy.cluster.hierarchy import dendrogram, linkage 
from sklearn.manifold import MDS

n = 10
X = [np.random.rand(10) + 1 for i in range(n)]
X = np.concatenate((X, [np.random.rand(10) - 1 for i in range(n)]), 0)

mds = MDS(n_components=2)
X_r = mds.fit(X).embedding_  

# Plot MDS result
plt.figure(figsize=(5,5))
plt.title("MDS")
plt.scatter(X_r[:,0], X_r[:, 1])

lnk = linkage(X)

# Plot dendogram
plt.figure(figsize=(5,5))
plt.title("Dendogram")
dendrogram(lnk)

# Plot 'lnk' into scatter plot ..

结果

缺少的是另一个反映集群分配的彩色MDS图。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-10 20:32:12

假设有两个集群,您可以将fclusterlnk一起使用,

代码语言:javascript
复制
# Plot 'lnk' into scatter plot ..
from scipy.cluster.hierarchy import fcluster
fc = fcluster(lnk, 2, criterion='maxclust')
plt.figure(figsize=(5,5))
plt.scatter(X_r[:,0],X_r[:,1],c=fc)

然后以c为颜色绘制散点图。这给了我们,

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38872288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档