sla*_*ias 2 r categories ggplot2
我正在尝试创建以下数据的箱线图
Temp<-rnorm(90,mean=100,sd=10)
Yr<-sample(c("1999","2000","2005","2009","2010"),size=90,replace=TRUE)
Month<-sample(c("June","July","August"),size=90,replace=TRUE)
Month
df<-data.frame(Temp,Month,Yr)
Run Code Online (Sandbox Code Playgroud)
我想要的视觉及其相应的代码如下:
ggplot(df,aes(x=interaction(Month,Yr),y=Temp,fill=Month))+
geom_boxplot()+
xlab("Year")+
ylab("Daily Maximum Temperature")
Run Code Online (Sandbox Code Playgroud)
但是,您会注意到,数据中缺少了几年,而我正在尝试使该图表反映出x范围内的差距.另一个问题是轴上的文本和刻度线.我希望刻度只是观察年而不是月份.因为月份已经在填充中编码.我尝试过scale_x_discrete,但试图为连续轴提供离散值会吐出空白图和错误.我已经满足了当天对计算机配额的咒骂,在这方面获得一些帮助真的很棒.
小智 5
这会产生巨大的差距,因为每年都有自己的差距,但你可以通过只将特定年份作为factor()调用的level参数来调整.
df$Yr <- factor(df$Yr, levels=1999:2010)
ggplot(df,aes(x=Yr,y=Temp,fill=Month))+
geom_boxplot(position=position_dodge(1))+
ylab("Daily Maximum Temperature") +
scale_x_discrete("Year", drop=FALSE)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
895 次 |
| 最近记录: |