使用Python绘制K-means聚类结果的散点图

可以使用Python中的matplotlib库来绘制散点图,直观地展示K-means聚类结果。

1. 获取聚类结果

首先,需要将聚类结果中每个样本的类别(即所属的簇)提取出来。例如,在K-means模型中,可以使用author_km.predict(author_data)方法获取每个样本的类别。

# 获取聚类结果中每个样本的类别
labels = author_km.predict(author_data)

2. 绘制散点图

使用matplotlib库的scatter方法绘制散点图,并使用不同的颜色来表示不同的簇。

# 绘制散点图
plt.scatter(author_data[:, 0], author_data[:, 1], c=labels)

其中,author_data[:, 0]author_data[:, 1]分别表示数据集的第一个特征和第二个特征。c=labels参数用于指定每个样本所属的簇,并使用不同的颜色表示不同的簇。

3. 添加聚类中心点

可以使用scatter方法绘制聚类中心点的标记,例如使用红色十字形。

# 绘制聚类中心点的标记
plt.scatter(author_centers[:, 0], author_centers[:, 1], marker='x', s=200, linewidths=3, color='r')

4. 设置图形标题和轴标签

使用xlabelylabel方法设置图形标题和轴标签。

# 设置图形标题和轴标签
plt.xlabel('Feature1')
plt.ylabel('Feature2')

5. 显示图形

使用plt.show()方法显示绘制的散点图。

# 显示图形
plt.show()

示例代码

import matplotlib.pyplot as plt

# 获取聚类结果中每个样本的类别
labels = author_km.predict(author_data)

# 绘制散点图
plt.scatter(author_data[:, 0], author_data[:, 1], c=labels)

# 绘制聚类中心点的标记
plt.scatter(author_centers[:, 0], author_centers[:, 1], marker='x', s=200, linewidths=3, color='r')

# 设置图形标题和轴标签
plt.xlabel('Feature1')
plt.ylabel('Feature2')

# 显示图形
plt.show()

注意

根据实际情况,需要修改代码中的特征列名称、聚类模型名称等参数。

使用Python绘制K-means聚类结果的散点图

原文地址: https://www.cveoy.top/t/topic/oRk4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录