You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ggplot2图例无法显示问题求助:附相关代码寻求解决

ggplot2图例不显示问题解决方法

你的代码里图例不显示的核心原因是:在geom_line()中直接指定了col/color参数,覆盖了aes()里的颜色映射定义。ggplot2只有通过aes()定义的映射关系,才会生成对应的图例项,手动设置的颜色不会被识别为图例的一部分。

修改后的代码

ggplot(data = dane2, aes(x = iterations, y = powers, color = 'Moc testu')) +
  geom_line()+  # 移除手动设置的col='red'
  geom_line(data = dane3, aes(x = iterations, y = blad_II_r, color = 'Błąd II rodzaju'))+  # 移除手动设置的color='orange'
  ggtitle('Błąd II rodzaju i moc testu w zależności od ilości iteracji') +
  xlab('iteracja') +
  ylab('') +
  ylim(-0.01, 1) +
  scale_color_manual(name = "Legenda", values = c("Moc testu" = "red", "Błąd II rodzaju" = "orange"))+
  theme(legend.position = 'right')

关键说明

  1. 保留aes()中的color映射:这是让ggplot2识别图例项的核心,把每条线的名称定义在color参数里,后续通过scale_color_manual绑定对应颜色。
  2. 移除geom_line()的手动颜色设置:避免覆盖映射关系,让颜色完全由scale_color_manual统一控制。
  3. 简化图例标题设置:直接在scale_color_manual的name参数里设置图例标题,不需要额外的guides()语句(保留也可,但代码更简洁)。

内容的提问来源于stack exchange,提问作者Kacper Kaszuba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 07:50:35