0

我试图用 scales="free_y" 绘制箱线图,但我发现在 ggplot2 中这是不可能的。

所以我用

library(gridExtra)
grid.arrange(boxplot1,boxplot2,boxplot3,ncol=3)

结果非常好,但是否可以像使用 facet_grid() 一样为单个图的条带发送文本?

我将不胜感激任何想法和建议。

这是示例:

data(mpg)
ggplot(mpg,aes(x=manufacturer,y=displ))+facet_grid(.~class)+geom_boxplot()

现在箱线图不能使用 scales="free_y" 因此我做了这个

box1<-ggplot(subset(mpg,class=="2seater"),aes(x=manufacturer,y=displ))+geom_boxplot()
box2<-ggplot(subset(mpg,class=="minivan"),aes(x=manufacturer,y=displ))+geom_boxplot()
box3<-ggplot(subset(mpg,class=="suv"),aes(x=manufacturer,y=displ))+geom_boxplot()
grid.arrange(box1,box2,box3,ncol=3)

适当的比例结果很好,但我现在在每个情节上都丢失了条形文字。

是否可以单独使用它们然后我可以使用

grid.arrange()

提前致谢。

4

1 回答 1

1

如果您的图仅由一个变量刻面,那么您可以使用facet_wrap()而不是facet_grid(),因此您将能够使用scales="free_y".

ggplot(mtcars,aes(as.factor(cyl),mpg))+geom_boxplot()+
          facet_wrap(~gear,scales="free_y") 

在此处输入图像描述

于 2013-08-27T06:14:46.710 回答