更新後に「'gList' では 'grobs' のみが許可されます」というメッセージで終了する gridExtras の grid.arrange 質問する

更新後に「'gList' では 'grobs' のみが許可されます」というメッセージで終了する gridExtras の grid.arrange 質問する

私は 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ようになりました(bottomleft、 も使用できます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,...),...

上記のコードの結果は次のようになります。

ここに画像の説明を入力してください

おすすめ記事