2014-12-03 29 views
0

可以說我有一個名爲ALL的列表,其中有40個元素,每個元素都是ggplot調用一個grid.arrange名稱的向量

,如果我想繪製的其中之一,我可以做

ALL[[1]] 

print(ALL) 

,如果我想繪製它們放在一起,我可以做

grid.arrange(ALL[[1]] ,ALL[[2]], ALL[[3]], .... ) 

grid.arrange(ALL[[names(ALL)[1]]] ,ALL[[names(ALL)[2]]], ALL[[names(ALL)[3]]], .... ) 

這實在讓人厭倦許多列表元素。但我不知道如何打電話grid.arrange來繪製所有情節。我不想在列表上顯示apply,因爲我想在同一頁面上顯示多個圖。

調用40個地塊到grid.arrange可能看起來很多,但他們是小塊地塊,即使在一頁上1:10的情節,這是很多輸入!

+1

嘗試'do.call(grid.arrange,ALL)'。 – 2014-12-03 17:27:23

+0

乾杯喬希,你想作出回答,所以我可以接受這可能是有用的其他SOers ... – user1320502 2014-12-03 17:45:47

+0

在那裏,完成。謝謝。 – 2014-12-03 17:54:16

回答

1

只要你有一個清單(在這裏你ALL),其元素的函數(這裏grid.arrange)你會像傳遞的參數,就可以使用do.call

這應該做的伎倆:

## Equivalent to grid.arrange(ALL[[1]], ALL[[2]], ..., ALL[[n]]) 
do.call(grid.arrange, ALL) 
相關問題