编码颜色时向散点图添加图例

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()

【讨论】:

以上是关于编码颜色时向散点图添加图例的主要内容,如果未能解决你的问题,请参考以下文章

将图例添加到 dc.js 散点图

R语言散点图可视化:自定义标题和标签拟合回归线lowess为散点图添加平滑拟合线修改散点图中点颜色和点符号分组散点图添加图例pairs可视化散点图矩阵ggplt2可视化lattice

如何将图例添加到具有颜色分配的散点图

我们如何根据颜色标记散点图的图例

来自颜色字典的 matplotlib.pyplot 散点图图例

Pandas 散点图使用数据框字段派生颜色和图例