编码颜色时向散点图添加图例
Posted
技术标签:
【中文标题】编码颜色时向散点图添加图例【英文标题】:Adding legend to scatterplot when color is encoded 【发布时间】:2020-02-15 16:09:15 【问题描述】:我无法在散点图中添加图例。 颜色由变量 y 编码的问题,变量 y 取两个值 0 或 1。 X 来自 PCA 方法,我尝试绘制 2 个不同颜色对应不同 y 的主成分。 我收到错误消息“没有找到带有标签的句柄放在图例中。”
尝试了不同的教程,但仍然感到困惑。
fig = plt.figure(figsize=(10,5))
ax = fig.add_subplot(111)
plt.scatter(x_reduced[:,0], x_reduced[:,1],c=y, alpha=0.5)
plt.legend()
plt.show()
【问题讨论】:
您能提供数据示例吗? (x_reduced, y) 如果您使用的是较新版本的 Matplotlib (>=3.1),此答案将有所帮助:(***.com/a/56236062/4531017) 【参考方案1】:如果您使用的是较新版本的 Matplotlib (>=3.1),那么您可以按照以下答案将图例添加到散点图中:Scatterplot legends
否则,解决方法是对 plt.scatter
进行两次单独调用
# one scatter for y == 0
plt.scatter(x_reduced[y==0,0], x_reduced[y==0,1], alpha=0.5, label = "group1")
# another scatter for y == 1
plt.scatter(x_reduced[y==1,0], x_reduced[y==1,1], alpha=0.5, label = "group2")
# create legend for both
plt.legend()
【讨论】:
以上是关于编码颜色时向散点图添加图例的主要内容,如果未能解决你的问题,请参考以下文章
R语言散点图可视化:自定义标题和标签拟合回归线lowess为散点图添加平滑拟合线修改散点图中点颜色和点符号分组散点图添加图例pairs可视化散点图矩阵ggplt2可视化lattice