利用kmeans可视化聚类结果
时间: 2023-08-24 16:08:07 浏览: 48
K-Means是一种非常常用的聚类算法,可以将数据集中的样本划分为K个互不重叠的簇。为了可视化聚类结果,我们可以使用Python中的matplotlib库绘制散点图。
以下是一个简单的K-Means聚类可视化的代码示例:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
# 生成数据
np.random.seed(0)
X = np.random.randn(100, 2)
# 使用K-Means算法进行聚类
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
labels = kmeans.labels_
# 绘制散点图并用不同颜色表示不同类别
plt.scatter(X[labels==0, 0], X[labels==0, 1], c='red', label='Cluster 1')
plt.scatter(X[labels==1, 0], X[labels==1, 1], c='blue', label='Cluster 2')
plt.scatter(X[labels==2, 0], X[labels==2, 1], c='green', label='Cluster 3')
# 绘制聚类中心
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], marker='*', s=300, c='black', label='Centroids')
plt.legend()
plt.show()
```
在上面的代码中,我们首先生成了一个二维随机数据集X,然后使用K-Means算法将其聚类为3个簇,并将不同类别的样本用不同颜色表示。最后,我们绘制了每个簇的聚类中心。
你可以根据自己的数据集和聚类需求,调整代码中的参数,得到不同的聚类结果和可视化效果。