我试图制作两个独立的图,我想在我的海报中并排呈现它们(我需要将它们分开并且不能使用facet_wrap)。其中一个图有多个箱线图,而第二个图只有一个。当我并排放置两个图时,如何操纵箱线图的宽度,使得第二个箱线图与图 1 中任何一个箱线图的宽度具有相同的尺寸?一个可重现的例子:
tvalues <- sample(1:10000,1200)
sex <- c(rep('M',600),rep('F',600))
region <- c('R1','R2','R3','R4','R5')
df1 <- data.frame(tvalues,sex,region)
tvalues2 <- sample(1:10000,200)
sex2 <- sample(c('M','F'),200,replace=T)
region2 <- 'R6'
df2 <- data.frame(tvalues2,sex2,region2)
p1 <- ggplot(data=df1,aes(x=region,y=tvalues,color=sex)) +
geom_boxplot(width=0.5)
p2 <- ggplot(data=df2,aes(x=region2,y=tvalues2,color=sex2)) +
geom_boxplot(width=0.5)
图1
情节2
如果是单个箱线图,如下例所示:
a<- data.frame(obs=rep("A", 50),
value=rnorm(50, 100, 50))
ggplot(a, aes(y=value))+
geom_boxplot()
我们可以建立一个假的x/y轴并建立一个轴限制,这样geom_boxplot()的宽度选项就决定了盒子的宽度
ggplot(a, aes(y=value, x=0))+
geom_boxplot(width=0.7) +
xlim(-1,1)
您可以添加以下内容来删除所有 x.axis 文本和刻度
主题(主题(axis.title.x = element_blank(), axis.text.x = element_blank(), axis.ticks.x = element_blank())