web-dev-qa-db-ja.com

gListで許可されるグロブのみ

すべて-この正確なトピックについては他にもいくつか質問がありますが、私が直面している問題に対処するものはありません。これがコードの簡単なスニペットです。誰かがここの問題が何であるかアドバイスできますか?

> 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"
5
skafetaur

問題は、plot()hist()がベースグラフィックスであるが、グリッドまたはggplotグラフィックスではないため、グロブではないことです(「grob」は「グリッドグラフィカルオブジェクト」のやや奇妙な頭字語です) 。同等のグリッドプロットを見つけるか、ベースグラフィックスアプローチを使用してプロットを積み重ねることができます。

後者を行う方法:

> 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 詳細については。

7
John Coleman