R 为什么mapply不在输出中存储ggplot对象

R 为什么mapply不在输出中存储ggplot对象,r,ggplot2,mapply,R,Ggplot2,Mapply,在本场景中使用mapply时,它将返回相乘x和y得到的实际数字: mult.fun <- function(x, y) { x*y } res <- mapply(mult.fun, seq(1,3), seq(1,3)) # gives > 1 4 9 我想做同样的事情,但是我想存储的不是数字而是ggplot2对象: plot.fun <- function(x, y) { ggplot(data = NULL, aes(x,y)) + geom_point(

在本场景中使用mapply时,它将返回相乘
x
y
得到的实际数字:

mult.fun <- function(x, y) {
  x*y
}
res <- mapply(mult.fun, seq(1,3), seq(1,3)) # gives > 1 4 9
我想做同样的事情,但是我想存储的不是数字而是
ggplot2
对象:

plot.fun <- function(x, y) {
  ggplot(data = NULL, aes(x,y)) + geom_point()
}
res <- mapply(plot.fun, seq(1,3), seq(1,3))
当我直接调用函数时,它将给我一个
ggplot2
对象:

class(plot.fun(1,1)) # --> "gg"     "ggplot"

如何调用plot函数并将实际绘图存储在列表中?为什么mapply不这样做呢?

SIMPLIFY=FALSE
使用默认值
SIMPLIFY=FALSE
Map
。可能是重复的:和/或谢谢,这很容易修复。。。哈哈@user20650@CodeNoob ; 干杯,当其他答案提供相同的解决方案时,我将以dup的形式结束此问题
list()
attr(,"class")
[1] "waiver"
class(plot.fun(1,1)) # --> "gg"     "ggplot"