使用组合项更改ggplot2图例中的项目顺序

时间:2015-04-18 11:58:57

标签: r ggplot2

我使用ggplot2绘制散点图,其中包含分组和未分组geom_smooth()。我希望未分组平滑的条目出现在图例的顶部或底部,但图例按字母顺序排序。

my.colors <- c('4' = 'red', 'f' = 'green', 'r' = 'blue', 'all' = 'black')
ggplot(mpg, aes(displ, hwy)) +
  geom_point(aes(color = drv), alpha = 1/3) + theme_bw() +
  geom_smooth(aes(color = drv), method = 'lm') +
  geom_smooth(aes(color = 'all'), method = 'lm') +
  scale_color_manual(name = "Drive Types", values = my.colors)

Scatterplot

此问题与Scott's类似,但包含geom_blank()并未解决问题。此外,将'all'作为mpg$drv中的级别包含也没有任何区别。

1 个答案:

答案 0 :(得分:4)

使用休息?

my.colors <- c('4' = 'red', 'f' = 'green', 'r' = 'blue', 'all' = 'black')
ggplot(mpg, aes(displ, hwy)) +
  geom_point(aes(color = drv), alpha = 1/3) + theme_bw() +
  geom_smooth(aes(color = drv), method = 'lm') +
  geom_smooth(aes(color = 'all'), method = 'lm') +
  scale_color_manual(name = "Drive Types", values = my.colors, 
                     breaks=c("all", "4", "f", "r"))