我正在实现一个K-Means聚类算法。我想在一个散点图中显示聚类数据集(每个都是不同的颜色)。我这样做如下:
for i in range(k):
plt.scatter(np.array(clustersets[i])[:, 0], np.array(clustersets[i])[:, 1], c=c_map(i))
,其中k是散点图中的中心数( - >簇集数)。我现在想要为每个数据集添加一个包含1个项目的图例。因此,这取决于预定义的数字k
。
如何添加一个图例,使其覆盖散点图中的所有不同项目,无论k
是什么?
如果我理解正确,你想要传说从0
到k
。您可以将label
选项与fiel说明符%d
一起使用来指定数据集。
for i in range(k):
plt.scatter(np.array(clustersets[i])[:, 0],
np.array(clustersets[i])[:, 1], c=c_map(i), label='Dataset %d' %i)
plt.legend()
你能试试c=KMeans(n_clusters=k).fit(X).labels_astype(float)
吗?