如何在Matplotlib中绘制树状图或层次聚类图
在Matplotlib中绘制树状图或层次聚类图可以使用scipy
库中的dendrogram
函数来实现。以下是一个简单的示例代码:
import numpy as npfrom scipy.cluster.hierarchy import dendrogram, linkageimport matplotlib.pyplot as plt# 生成随机数据data = np.random.rand(10, 2)# 计算层次聚类Z = linkage(data, 'ward')# 绘制树状图plt.figure(figsize=(10, 5))dendrogram(Z)plt.title('Hierarchical Clustering Dendrogram')plt.xlabel('Sample Index')plt.ylabel('Distance')plt.show()
在上面的代码中,首先生成了一些随机数据,然后使用linkage
函数计算数据的层次聚类,并最后通过dendrogram
函数绘制树状图。
您可以根据自己的数据和需求对代码进行修改和调整,以实现不同类型和样式的树状图或层次聚类图。