有没有人知道如何用ggplot2旋转日期格式的轴刻度?我希望获得带有"Date-Month"(例如"1985-5")的标签,x轴上的角度为45°.
数据样本:
Station Date Ptot
A 1980-02 16
A 1980-03 19
A 1980-04 40
A 1980-05 48
A 1980-06 NA
A 1980-07 18.5
A 1980-08 24.6
B 1980-07 50.8
B 1980-08 28.9
B 1980-09 32.9
B 1980-10 47.9
B 1980-11 16.3
Run Code Online (Sandbox Code Playgroud)
我试过这个:
library(ggplot2)
library(scales)
plot <- ggplot(data=na.omit(data), aes(x=Date, y=Ptot, group=Station))+
geom_line()+
facet_grid(Station~.)+
scale_x_date(breaks = "year", labels=date_format("%Y-%m"))+
xlab("Year")+
ylab("Prec (mm)")+
labs(colour = "Station")+
theme(axis.text.x = element_text(angle = 45, hjust = 1))+
theme_bw()
plot
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
谢谢!
Did*_*rts 38
首先,您应该将列Date作为日期.由于它没有提供日期,您应该在每个日期添加例如01并转换它们.
data$Date<-as.Date(paste(data$Date,"-01",sep=""),format="%Y-%m-%d")
Run Code Online (Sandbox Code Playgroud)
要在x轴下正确放置标签,您不仅要设置标签,angle=还要hjust=1确保标签的末端位于刻度标记下方.也theme_bw()应该放在轴文本的主题规范之前.
ggplot(data=na.omit(data), aes(x=Date, y=Ptot, group=Station))+
geom_line()+
facet_grid(Station~.)+
scale_x_date(breaks = "month", labels=date_format("%Y-%m"))+
xlab("Year")+
ylab("Prec (mm)")+theme_bw()+
theme(axis.text.x = element_text(angle = 45, hjust = 1))
Run Code Online (Sandbox Code Playgroud)

| 归档时间: |
|
| 查看次数: |
24289 次 |
| 最近记录: |