Matplotlib 散点图

Matplotlib scatter plots

plt.scatter(data_std[:, 1], data_std[:, 8], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 2], data_std[:, 9], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 3], data_std[:, 10], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 4], data_std[:, 11], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 5], data_std[:, 12], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 6], data_std[:, 13], c=kmeans_3,s=30, cmap='rainbow')
plt.scatter(data_std[:, 7], data_std[:, 0], c=kmeans_3,s=30, cmap='rainbow')
#plt.label(kmeans)
#plt.title(k=3)

plt.show
##
plt.scatter(data_std[:, 1], data_std[:, 8], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 2], data_std[:, 9], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 3], data_std[:, 10], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 4], data_std[:, 11], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 5], data_std[:, 12], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 6], data_std[:, 13], c=kmeans_4,s=30, cmap='rainbow')
plt.scatter(data_std[:, 7], data_std[:, 0], c=kmeans_4,s=30, cmap='rainbow')
plt.show()

对于上面的代码,如何在同一个单元格中绘制两个单独的散点图?

已查看文档并尝试在其他地方找到解决方案但无法找到帮助

您可以使用两个子图,然后使用各自的轴对象进行绘图。我给出了一个示例答案。你可以根据你的情况调整它

fig, (ax1, ax2) = plt.subplots(2)

ax1.scatter(data_std[:, 1], data_std[:, 8], c=kmeans_3,s=30, cmap='rainbow')
ax1.scatter(data_std[:, 2], data_std[:, 9], c=kmeans_3,s=30, cmap='rainbow')
ax1.set_title('k=3')
# ....

ax2.scatter(data_std[:, 1], data_std[:, 8], c=kmeans_4,s=30, cmap='rainbow')
ax2.scatter(data_std[:, 2], data_std[:, 9], c=kmeans_4,s=30, cmap='rainbow')
# ....

plt.show()