为多层geom_smooth添加自定义图例

时间:2017-06-06 21:07:06

标签: r ggplot2

我使用rms::rcs()geom_smooth()平滑数据点,使用不同的平滑度作为附加图层。我想在标识每个平滑度参数的一侧添加一个自定义图例,但我不确定如何做到这一点。我试过这个stackoverflow帖子:R: Custom Legend for Multiple Layer ggplot 没有运气。

如何使用geom_smooth()为每个linetype添加自定义图例?

修改:我已更新问题以反映linetype而不是color的问题。

示例代码:

library(rms)
  p1 <- ggplot(diamonds, aes(carat, price)) + 
  geom_smooth(method = "gam", formula = y ~ rms::rcs(x, 3), aes(linetype = "solid")) + 
  geom_smooth(method = "gam", formula = y ~ rms::rcs(x, 4), aes(linetype = "dashed")) + 
  geom_smooth(method = "gam", formula = y ~ rms::rcs(x, 5), aes(linetype = "dotdash")) +
  scale_colour_manual(name="Knots", values=c("solid", "dashed", "dotdash"), labels = c("3", "4", "5"))

简介:

enter image description here

0 个答案:

没有答案