层次聚类算法 的pyhton程序 用matplotlib画图
以下是层次聚类算法的Python程序,使用matplotlib绘制聚类结果的树状图:
import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster.hierarchy import dendrogram, linkage
# 生成随机数据
np.random.seed(0)
X = np.random.random((10, 2))
# 层次聚类
Z = linkage(X, 'ward')
# 绘制树状图
fig, ax = plt.subplots(figsize=(10, 5))
dendrogram(Z)
plt.show()
解释程序:
- 导入必要的库:numpy、matplotlib和scipy.cluster.hierarchy。
- 生成10个随机二维数据点。
- 使用ward方法进行层次聚类,得到聚类结果的Z矩阵。
- 绘制树状图,其中dendrogram函数用于绘制树状图,fig和ax变量用于设置图形大小和坐标轴,plt.show()用于显示图形。
运行程序后,将会显示聚类结果的树状图。树状图的横轴表示数据点,纵轴表示聚类距离。可以根据聚类距离的大小,将树状图切割成若干个聚类簇。
原文地址: https://www.cveoy.top/t/topic/bMfM 著作权归作者所有。请勿转载和采集!