K-means聚类可视化
时间: 2023-12-10 09:24:30 浏览: 37
K-means是一种常用的无监督学习算法,用于将数据集分成K个不同的类或簇。可视化聚类结果可以更直观地理解算法的效果。
以下是一个简单的K-means聚类可视化的代码实现,使用Python的scikit-learn库:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.datasets import make_blobs
# 创建一个随机数据集
X, y = make_blobs(n_samples=300, centers=4, cluster_std=0.60, random_state=0)
# 使用KMeans算法进行聚类
kmeans = KMeans(n_clusters=4)
kmeans.fit(X)
# 可视化聚类结果
plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')
centers = kmeans.cluster_centers_
plt.scatter(centers[:, 0], centers[:, 1], c='black', s=200, alpha=0.5)
plt.show()
```
在上面的代码中,我们首先使用`make_blobs`函数生成一个随机的数据集,然后使用`KMeans`算法将数据集聚类为4个类别。最后,我们使用`scatter`函数将每个数据点可视化,每个类别用不同的颜色表示,聚类中心用黑色的圆圈表示。
运行上述代码,可以得到以下结果:
![kmeans_clustering_visualization](https://user-images.githubusercontent.com/52498280/120933493-a5d99e00-c71b-11eb-840d-c05d8f9d6cd9.png)
这个可视化结果展示了数据集中的4个聚类,每个聚类用不同的颜色表示,而黑色的圆圈表示聚类中心。