gList中只允许使用grob

时间:2017-03-12 01:48:36

标签: r plot gridextra

全部 - 关于这个确切的主题还有其他几个问题,但它们都没有解决我面临的问题。这是一段简单的代码。谁能告诉你这里的问题是什么?

> grid.arrange(plot(rnorm(1000)),hist(rnorm(1000)), nrow=2, ncol=1)
Error in gList(list(wrapvp = list(x = 0.5, y = 0.5, width = 1, height = 1,  :
  only 'grobs' allowed in "gList"

1 个答案:

答案 0 :(得分:5)

问题是plot()hist()是基本图形而不是网格或ggplot图形,因此它们不是grob(" grob"是&#的一个有点奇怪的首字母缩写词34;网格图形对象")。您可以找到等效的网格图或使用基本图形方法来堆积图。

你采用后者的方式:

> par(mfrow = c(2, 1))
> plot(rnorm(1000))
> hist(rnorm(1000)) #are you sure you want to make a hist of 1000 *different* random numbers?
> par(mfrow = c(1, 1)) #reset this parameter

输出:

enter image description here

您还可以考虑使用layout。输入?layout了解详情。