下面是我在3个属性(x,y,value)中处理数据聚类的简单示例。每个样本表示其位置(x,y)及其所属变量。在
我的代码张贴在这里:x = np.arange(100,200,1)
y = np.arange(100,200,1)
value = np.random.random(100*100)
xx,yy = np.meshgrid(x,y)
xx = xx.reshape(100*100)
yy = yy.reshape(100*100)
j = np.dstack((xx,yy,value))[0,:,:]
fig = plt.figure(figsize =(12,4))
ax1 = plt.subplot(121)
xi,yi = np.meshgrid(x,y)
va = value.reshape(100,100)
pc = plt.pcolormesh(xi,yi,va,cmap = plt.cm.Spectral)
plt.colorbar(pc)
ax2 = plt.subplot(122)
y_pred = KMeans(n_clusters=12, random_state=random_state).fit_predict(j)
vb = y_pred.reshape(100,100)
plt.pcolormesh(xi,yi,vb,cmap = plt.cm.Accent)
图如下:
如何识别每个簇带的边界并勾勒出它们以增强可视化效果。
PS
这是我手工绘制的一个插图。我需要的是识别聚类边界并用直线描述它们。在
PPS
我发现了一个有趣的问题here试图在R中绘制聚类区域的边界
更新
在我尝试了子程序之后:
^{pr2}$
完了!在