sklearn库 k-means代码实现并画出散点图
时间: 2023-11-14 07:46:24 浏览: 88
以下是使用sklearn库实现k-means算法并画出散点图的代码:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
# 生成随机数据
np.random.seed(0)
X = np.random.rand(50, 2)
# 使用k-means算法进行聚类
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
# 画出聚类结果的散点图
colors = ['r', 'b', 'g']
for i in range(len(X)):
plt.scatter(X[i][0], X[i][1], c=colors[kmeans.labels_[i]], s=50)
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], c='black', s=100, alpha=0.5)
plt.title('K-means Clustering')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()
```
这段代码首先生成了一个包含50个二维随机数据点的数据集X,然后使用KMeans类进行k-means聚类,将数据集分为3个聚类簇。最后,使用matplotlib库画出聚类结果的散点图,其中每个数据点的颜色表示其所属的聚类簇,黑色圆点表示聚类簇的中心点。运行代码,可以得到如下的聚类结果图:
![k-means聚类结果图](https://img-blog.csdnimg.cn/20210706162518716.png)
阅读全文