欢迎访问宙启技术站
智能推送

绘制Python中的层次聚类图:Matplotlib库的应用

发布时间:2024-01-03 03:12:37

在Python中,可以使用Matplotlib库来绘制层次聚类图。层次聚类图是一种将对象按照相似性进行分组的图表,可以直观地展示聚类的结果。

下面是一个使用Matplotlib库绘制层次聚类图的示例:

import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster.hierarchy import dendrogram, linkage

# 创建数据
np.random.seed(0)
X = np.random.randn(10, 2)

# 使用层次聚类算法
Z = linkage(X, 'ward')

# 绘制层次聚类图
plt.figure(figsize=(10, 5))
plt.title('Hierarchical Clustering Dendrogram')
plt.xlabel('Sample index')
plt.ylabel('Distance')
dendrogram(Z)
plt.show()

在上述示例中,首先导入必要的库。然后,使用np.random.randn函数创建一个包含10个样本和2个特征的数据集。接下来,使用linkage函数进行层次聚类,参数'ward'表示使用ward方法计算联动矩阵。

最后,使用plt.figure创建一个图形窗口,设置标题、x轴和y轴的标签,并使用dendrogram函数绘制层次聚类图。最后使用plt.show显示图形。

运行以上代码,就可以获得一个层次聚类图。其中,x轴表示样本索引,y轴表示距离。图中的每个垂直线段代表一个样本,不同线段的高度表示样本之间的距离。通过这个图,可以直观地理解聚类的结果。

绘制层次聚类图可以帮助分析数据集中样本之间的相似性和分组结构,以便更好地理解数据。Matplotlib库提供了方便的函数和方法,使得对数据集进行层次聚类图的可视化变得简单易行。