在尝试将不同的聚类技术与n个聚类进行比较的情况下,我尝试为颜色指定一个特定的值,在这种情况下为3:
print(data2D)
x y k_label h_label
10 5 0 1
8 5 1 1
...
#1
plt.subplot(1, 2, 1)
#plt.figure(figsize=(8, 6))
plt.scatter(data2D[:,0], data2D[:,1], c=kmeans.labels_.astype(float))
#sns.scatterplot(x=data2D[:,0], y= data2D[:,1], data=data2D)
plt.title("K-MEANS")
#2
plt.subplot(1, 2, 2)
plt.scatter(data2D[:,0], data2D[:,1], c= agg_h.labels_.astype(float))
plt.tight_layout()
plt.title("AGGLOMERATIVE HIERARCHICAL CLUSTERING")
plt.show()
我尝试过:
temp = pd.DataFrame(data= {'h_label': np.unique(df.k_label), 'k_label': np.unique(df.k_label), "color": ["red", "blue", "yellow"] })
df = df.merge(temp, on = ["h_label"])
df["k_label"] = kmeans.predict(X)
但是似乎很多余,我不知道如何在Matplotlib中实现它。
简而言之,我想并排绘制两个数字,其中群集(k_label&h_label)= 1等于红色,= 2蓝色... n =最后一种颜色,等等。