我想删除 y 轴和箱线图之间以及两个箱线图分组之间不必要的空间(我通过 facet_grid() 创建)。
这是我目前正在处理的内容: ggplot(数据 = kazakh_dor, aes(x=CPosWord,y=ClengthMS,fill=TargetC)) + geom_boxplot(宽度 = 0.5, 位置 =position_dodge(宽度 = 0.5)) + ylim(c(50, 250)) +facet_grid( ~Vfront) + labs(x = "单词位置", y = "持续时间 (ms)") + ggtitle("Onsets") + theme(axis.text.x = element_text(size = 11, angle = 90, vjust = 0.5, hjust=1)) + 主题(legend.title = element_blank(), legend.position = "right",legend.direction="vertical", legend.key.width=unit(2,"line"), legend .key.height =单位(1.5,"线"),legend.spacing.x = 单位(0.5,"线"), legend.spacing.y = 单位(0.5,"线"), legend.background = element_rect(填充=“白色”,尺寸= 0.0,线型=“实心”))
我确实尝试在导出时更改尺寸,但这只会使箱线图变得更薄,这是我不想要的。老实说,我不知道点击的关键词可以回答我的问题。
您可以通过更改
panel.spacing.x
: 来修改或消除绘图两个面之间的水平间距
library(ggplot2)
iris |>
ggplot(aes(Sepal.Length, Sepal.Width)) +
geom_boxplot() +
facet_grid(~Species) +
theme(panel.spacing.x = unit(0, "mm"))
如果要删除图中内部的空白区域,请将
scales = "free_x"
添加到facet_grid
:
iris |>
ggplot(aes(Sepal.Length, Sepal.Width)) +
geom_boxplot() +
facet_grid(~Species, scales = "free_x")