云之间的间距

时间:2018-07-16 16:22:26

标签: python matplotlib

示例1

enter image description here

示例2

enter image description here

在两个图片上,我们都可以清楚地区分两个不同的云。

这是产生这两个图像的代码部分:

fig = plt.figure(figsize = (8,8))
ax = fig.add_subplot(1, 1, 1, projection='3d') 

#ax.set_xlabel('PC 1', fontsize = 15)
#ax.set_ylabel('PC 2', fontsize = 15)
ax.set_xlim3d([-10, 10])
ax.set_ylim3d([-10, 10])
ax.set_zlim3d([-10, 10])
ax.set_title('2 Component PCA', fontsize = 20)

targets = [1, 0]
colors = ['r', 'g']
for target, color in zip(targets,colors):
    indicesToKeep = finalDf['Label_Capture_Spread'] == target
    ax.scatter(finalDf.loc[indicesToKeep, 'PC 1'],
               finalDf.loc[indicesToKeep, 'PC 2'],
               finalDf.loc[indicesToKeep, 'PC 3'],
               c = color,
               s = 20)
ax.legend(targets)
ax.grid()

在两个图像上,两个云之间都没有空间。有没有办法将两个云彼此分离?我们可以将点放在气泡中以清楚地区分每个云吗?

1 个答案:

答案 0 :(得分:1)

我相信,从点中找出凸包并将其与点(或没有点)一起绘制图形会有所帮助。您可以在问题Plotting a set of given points to form a closed curve in matplotlib中找到2d解决方案的草图。