R ggplot2:时间轴上的标签到每月垃圾箱
R ggplot2: labels on time axis to monthly bins
我正在尝试调整 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))
并产生以下输出:
我认为在月中放置标签、去掉月中网格线等等会很直观……有点像这样:
这可以用 ggplot2 完成吗?
这是一个非常 的解决方案,但它是一个选项。我不认为 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())
我正在尝试调整 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))
并产生以下输出:
我认为在月中放置标签、去掉月中网格线等等会很直观……有点像这样:
这可以用 ggplot2 完成吗?
这是一个非常 的解决方案,但它是一个选项。我不认为 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())