1
我可以繪製kmeans簇的所有數據點,以便使用不同的顏色表示簇。但是現在我想要將羣集的中心繪製成與羣集點相同的顏色。 這裏是我的代碼:繪製k-means簇的中心與其簇點的顏色相同
num_clusters=5
data2D = pca.transform(X)
centers2D = pca.transform(km.cluster_centers_)
labels=km.labels_
colors=['#000000','#FFFFFF','#FF0000','#00FF00','#0000FF']
col_map=dict(zip(set(labels),colors))
label_color = [col_map[l] for l in labels]
plt.scatter(data2D[:,0], data2D[:,1], c=label_color) # This plots the cluster points.
現在的問題就出在這裏,我怎麼還積羣集中心點爲彩色的點一樣嗎?具體來說,我應該使用什麼c
?
plt.scatter(centers2D[:,0], centers2D[:,1], marker='x', s=200, linewidths=2, c=label_color)
使用c = label_color不起作用,因爲centers2D是座標列表,如下所示。我如何將座標映射到與第一個散點圖的整數相同的顏色?
print centers2D
[[ 0.03563292 -0.09528218]
[ 0.05799584 0.01593253]
[ 0.02265664 0.05109819]
[ 0.09457535 -0.11127898]
[-0.16129666 0.00428571]]