matplotlib怎么使用原数据画kmeans聚类的质心
时间: 2024-02-20 14:58:09 浏览: 74
KMeans聚类算法+代码
5星 · 资源好评率100%
要使用原数据画kmeans聚类的质心,可以按照以下步骤进行:
1. 首先,使用sklearn.cluster中的KMeans类对数据进行聚类,获取聚类结果;
2. 然后,获取聚类结果中的质心坐标;
3. 最后,使用matplotlib中的scatter函数将原数据和质心坐标画在同一个图中。
具体代码如下:
```python
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
# 原始数据
X = [[1, 2], [1, 4], [1, 0],
[4, 2], [4, 4], [4, 0]]
# 聚类
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
labels = kmeans.labels_
centers = kmeans.cluster_centers_
# 画图
plt.scatter([x[0] for x in X], [x[1] for x in X], c=labels)
plt.scatter([x[0] for x in centers], [x[1] for x in centers], marker='x', s=200, linewidths=3, color='r')
plt.show()
```
其中,X是原始数据,kmeans是KMeans聚类的结果,labels是每个样本的类别,centers是聚类的质心坐标。使用scatter函数将原数据和质心坐标画在同一个图中,其中c参数表示颜色,marker参数表示符号,s参数表示大小,linewidths参数表示线宽,color参数表示颜色。
阅读全文