R ggplot2:时间轴上的标签到每月的垃圾桶

时间:2018-06-19 12:03:52

标签: r ggplot2 labels

我正在尝试调整ggplot标记轴的方式。我的代码是:

x = as.POSIXct(c(1, 9999999), origin="1970-01-01 00:00:00 CET")
y = c(1,2)
df = data.frame(x=x, y=y)
ggplot()+
geom_line(data = df, aes(y=y, x=x))

并产生以下输出: enter image description here

我认为将标签放置在月中旬,摆脱月中的网格线等等是很直观的……有点像这样: enter image description here

这可以用ggplot2完成吗?

1 个答案:

答案 0 :(得分:0)

这是一个非常 hacky解决方案,但这是一个选择。我认为label on minor breaks only是不可能的,所以要执行您要查找的操作,需要在主要中断处贴上标签,用空格(或选项卡)偏移标签,然后隐藏次要中断面板行,就像这样:

ggplot()+
  geom_line(data = df, aes(y=y, x=x)) +
  scale_x_datetime(date_breaks = "1 month", date_labels=paste0("                                                     ","%b")) +
  theme(panel.grid.minor = element_blank())

enter image description here