我正在使用以下设置来创建ggplot2图表的列表。在marrange之后无法使用ggsaveGrob
这工作得很好:
library(grid)
library(gridExtra)
library(ggplot2)
mycols <- c('year','displ')
mylist <- list()
for(item in mycols){
p <- ggplot(mpg, aes_string(x = 'hwy', y = item)) +
geom_point()
mylist[[(length(mylist) +1)]] <- p
}
ml = marrangeGrob(grob = mylist, nrow=2, ncol=1)
ggsave("P://multipage.pdf", ml, width =10, height = 5)
然而,在循环中,替换:
mylist[[(length(mylist) +1)]]
与mylist <- append(mylist, p)
这里讨论how to append an element to a list without keeping track of the index?将在ggsave
抛出一个错误阶段:
错误
$<-.data.frame
(*tmp*
“wrapvp”,值=列表(x = 0.5,Y = 0.5,:更换有17行,数据具有234
什么是这里的问题?个别地,列表中的所有图表看起来都很好。
谢谢!
嘿@MrFlick谢谢。我现在正在更新。我发现了一个有趣的bug –
是的,这是真的。让我试试通常的玩具例子 –
@MrFlick精彩编辑你不觉得? :) –