我有一个被分成27个集群的数据帧。为了仅在一个图中绘制所有这些簇,我使用以下for循环:
list_of_clusters= list(set(klabels))
fig=plt.figure(figsize=(13,9),frameon=True,facecolor='lightgrey', edgecolor='black')
ax = fig.add_subplot(1,1,1)
plt.axis()
plt.xlim([-2.5, 0.2])
plt.ylim([-0.7, 3.3])
plt.xlabel("log PhiZ")
plt.ylabel("log RQI")
for i in list_of_clusters:
plt.scatter(
logphizlogrqi[klabels == i, 0], logphizlogrqi[klabels == i, 1],
s=10, cmap='hsv',
marker='8',
label=i+1
)
ax.yaxis.tick_right()
ax.yaxis.set_ticks_position('both')
plt.legend(scatterpoints=1, loc='center left',bbox_to_anchor=(-0.4, 0.5))
plt.grid()
plt.show()
但生成的图形会多次使用每种颜色,如下图所示:
理想情况下,我要查找的图形应该如下所示(虽然颜色彼此接近,但它们只使用一次):
如果你能帮我解决问题,我将不胜感激
所以我想出了这个方法,效果很好:
结果如下所示:
请在seaborn示例中添加并修复以下代码以响应注释
加上
编辑
相关问题 更多 >
编程相关推荐