0

その間

test <- do.call("arrangeGrob", c(plots.list[1:2],ncol=2,main=("test")) 

うまく動作し、

test <- do.call("arrangeGrob", c(plots.list[1:2],ncol=2,main=textGrob("test")))

次のエラーが発生します。

"Error in arrangeGrob(list(grobs = list(list(x = 0.5, y = 0.5, width = 1, : input must be grobs!"

フォント サイズとフォント フェイスを設定するには、メインを textGrob にする必要があります。誰かが私が間違っていることを知っていますか?

4

2 に答える 2

2

問題は、パラメータのリストがdo.call正しくないという事実から来ています。

c(list(1, 2), ncol=1, textGrob("a"))

textGrob の内容を「公開」しますが、実際には 2 つのリストを追加する必要があります。

c(list(1, 2), list(ncol=1, textGrob("a")))

あなたの質問に適用すると、これは

do.call("grid.arrange", c(plots.list[1:2],list(ncol=2, main=textGrob("test")))) 

ただし、次のバージョンの gridExtra (>= 2.0.0) では が認識されなくなることに注意してください。代わりにmain使用する必要があります。top

do.call("grid.arrange", c(plots.list[1:2],list(ncol=2, top=textGrob("test")))) 

そして、arrangeGrob新しい引数を得たので、もうgrobs必要ありません。do.call

grid.arrange(grobs=plots.list[1:2], ncol=2, top=textGrob("test"))
于 2015-07-11T23:18:54.773 に答える
0

何時間もグーグルで調べた後、質問を投稿した直後に答えを見つけました.....

以下の作品:

test <- do.call("grid.arrange",c(plots.list, ncol=2, main =substitute(textGrob("test"),env = parent.frame())))
于 2015-07-11T23:07:06.577 に答える