我如何摆脱 arrangeGrob 中的随机背景网格
how do I get rid of random background grid from arrangeGrob
我需要将几个地块包裹在一个网格中,通常是奇数,所以通常会有一个 "empty spot"。
我需要使用 arrangeGrob()
——而不是 grid.arrange()
——因为我想保存情节以备后用,而不是立即 plot()
。
这很好用,但奇怪的是,arrangeGrob()
在空白处留下了一些奇怪的背景。
像这样:
library(ggplot2)
p1 <- ggplot(mtcars, aes(x=factor(cyl), y=mpg)) + geom_boxplot()
p2 <- ggplot(mtcars, aes(x=factor(cyl), y=wt)) + geom_boxplot()
p3 <- ggplot(mtcars, aes(x =factor(cyl), y=disp)) + geom_boxplot()
library(gridExtra)
y <- arrangeGrob(p1, p2, p3, ncol = 2)
plot(y)
在右下角生成一个带有一些奇怪的灰色东西的图:
将此与 grid.arrange()
进行比较:
grid.arrange(p1, p2, p3, ncol = 2)
产生一个没有灰色怪异的漂亮情节:
右下角这个灰色的东西是哪里来的?我该如何摆脱它?
注意我无法通过更改ncol
来避免空位;我有时地块数量不均匀,所以总会有空位。
我可以接受空位,我只是喜欢它们干净。
(孤立地说,最后一句话听起来很漂亮OCD-ish。
更新
包作者(?)在下面回答:我应该使用 grid.draw(y)
。
类似的问题仍然存在(也许是相同的根本原因?):如果您之前绘制 some 对象,"empty spot" 仍然被 占据过去剧情。
诡异的。
像这样:
plot(p1)
grid.draw(y)
产量:
删除 nrow
参数。像这样:
library(ggplot2)
p1 <- ggplot(mtcars, aes(x=factor(cyl), y=mpg)) + geom_boxplot()
p2 <- ggplot(mtcars, aes(x=factor(cyl), y=wt)) + geom_boxplot()
library(gridExtra)
y <- arrangeGrob(p1, p2, ncol = 2)
plot(y)
arrangeGrob()
现在 returns 一个 gtable,你应该用 grid.draw()
绘制它,而不是 plot()
。
grid.draw(y)
产量
要去除过去情节中的人工制品(按照上述更新)使用 grid.newpage()
。
我需要将几个地块包裹在一个网格中,通常是奇数,所以通常会有一个 "empty spot"。
我需要使用 arrangeGrob()
——而不是 grid.arrange()
——因为我想保存情节以备后用,而不是立即 plot()
。
这很好用,但奇怪的是,arrangeGrob()
在空白处留下了一些奇怪的背景。
像这样:
library(ggplot2)
p1 <- ggplot(mtcars, aes(x=factor(cyl), y=mpg)) + geom_boxplot()
p2 <- ggplot(mtcars, aes(x=factor(cyl), y=wt)) + geom_boxplot()
p3 <- ggplot(mtcars, aes(x =factor(cyl), y=disp)) + geom_boxplot()
library(gridExtra)
y <- arrangeGrob(p1, p2, p3, ncol = 2)
plot(y)
在右下角生成一个带有一些奇怪的灰色东西的图:
将此与 grid.arrange()
进行比较:
grid.arrange(p1, p2, p3, ncol = 2)
产生一个没有灰色怪异的漂亮情节:
右下角这个灰色的东西是哪里来的?我该如何摆脱它?
注意我无法通过更改ncol
来避免空位;我有时地块数量不均匀,所以总会有空位。
我可以接受空位,我只是喜欢它们干净。
(孤立地说,最后一句话听起来很漂亮OCD-ish。
更新
包作者(?)在下面回答:我应该使用 grid.draw(y)
。
类似的问题仍然存在(也许是相同的根本原因?):如果您之前绘制 some 对象,"empty spot" 仍然被 占据过去剧情。 诡异的。 像这样:
plot(p1)
grid.draw(y)
产量:
删除 nrow
参数。像这样:
library(ggplot2)
p1 <- ggplot(mtcars, aes(x=factor(cyl), y=mpg)) + geom_boxplot()
p2 <- ggplot(mtcars, aes(x=factor(cyl), y=wt)) + geom_boxplot()
library(gridExtra)
y <- arrangeGrob(p1, p2, ncol = 2)
plot(y)
arrangeGrob()
现在 returns 一个 gtable,你应该用 grid.draw()
绘制它,而不是 plot()
。
grid.draw(y)
产量
要去除过去情节中的人工制品(按照上述更新)使用 grid.newpage()
。