私は Mac で R、R Studio、ggplot2 や gridExtras を含む一連のパッケージを更新しました。現在、gridExtras は基本的なプロットに失敗し、次のエラーが発生します:
「「gList」では「grobs」のみが許可されます」
動作するはずなのに動作しないコードを以下に示します。
library(ggplot2)
p1 = qplot(1:10,rnorm(10))
p2 = qplot(1:10,rnorm(10))
library(gridExtra)
grid.arrange(p1, p2, ncol=2, main = "Main title")
これにより、次のエラーが出力されます。
Error in gList(list(grobs = list(list(x = 0.5, y = 0.5, width = 1, height = 1, :
only 'grobs' allowed in "gList"
In addition: Warning message:
In grob$wrapvp <- vp : Coercing LHS to a list
どのような助けでも大歓迎です!
ベストアンサー1
これは、にはもうパラメータgrid.arrange
がないためmain
(2015 年夏頃の 2.0.0 リリースで削除されたようです)、 はパラメータがmain=
grob である必要があると認識しているためです。 を置き換えるにはmain
、 パラメータを使用できるtop
ようになりました(bottom
、left
、 も使用できますright
)。
したがって、これは例えば次のように機能します:
library(ggplot2)
p1 = qplot(1:10,rnorm(10))
p2 = qplot(1:10,rnorm(10))
library(gridExtra)
grid.arrange(p1, p2, ncol=2,top="Main Title")
このメッセージは少しわかりにくいです。これは、不明なすべてのパラメータを調べて、それらがgrobs
プロットできる可能性がある (グラフィカル オブジェクト) と想定しているためです。このようなわかりにくいエラー メッセージは、柔軟性の代償です。
注: - たくさんある場合は、grobs
すべてをリストにまとめて、次の形式を使用することを検討してください。
grid.arrange( grobs = list(p1,p2,...),...
上記のコードの結果は次のようになります。