ggplot中有两行X轴标签

时间:2014-12-11 08:20:57

标签: r ggplot2 label

我想在ggplot中制作两行X轴标签。

enter image description here

在这个图中,我想在每个指定年份下面再添加一行标签。像

这样的东西

1990 1995 2000 2005 2010 cold warm warm cold warm

这是制作此剧情的代码

ggplot(subset(dat, countryid %in% c("1")),  aes(date, 
nonpartisan))+geom_line(aes(color=countryid), color="dodgerblue1", 
size=1.4)+geom_line(aes(date, reshuffle), color="gray")+ theme_bw()

有没有办法通过专门为标签创建一列来再制作一行标签?

谢谢!

1 个答案:

答案 0 :(得分:8)

您可以通过scale_x_continuous(或scale_x_date添加自定义标签,如果它实际上是Date格式)。

ggplot(subset(dat, countryid %in% c("1")),  aes(date, nonpartisan)) +
  geom_line(aes(color=countryid), color="dodgerblue1", size=1.4) +
  geom_line(aes(date, reshuffle), color="gray") + 
  theme_bw() +
  scale_x_continuous(name = 'date', 
                     breaks = c('1990', '1995', '2000', '2005', '2010'), 
                     labels = c('1990\ncold', '1995\nwarm', '2000\nwarm', '2005\ncold', '2010\nwarm'))