是否可以设置通过Axes.scatter
生成的点的边框颜色,还是始终为黑色?
谢谢!
答案 0 :(得分:10)
如果你想让所有的边都是相同的颜色:
ax.scatter(...., edgecolor=EC)
其中EC
是一种颜色。如果你想要压制边缘(所以看起来边缘颜色与面部颜色相匹配)使用
ax.scatter(..., linewidths=0)
如果您希望边缘的颜色与脸部颜色不同,并且每个标记都有自己的颜色,则看起来您必须对自己进行映射:
my_cmap = cm.get_cmap('jet')
my_norm = matplotlib.colors.Normalize()
ec_data = rand(15)
my_normed_data = my_norm(ec_data)
ec_colors = my_cmap(my_normed_data) # a Nx4 array of rgba value
ax.scatter(rand(15), rand(15), s=500, c=rand(15), edgecolors=ec_colors, linewidth=3)