【发布时间】:2021-12-20 18:15:08
【问题描述】:
对于这个问题,我正在尝试创建多个可以应用函数的向量。我使用的函数是patchwork::area。
例如,如果我要使用patchwork 明确写出要绘制的设计区域,我会这样做:
library(patchwork)
# Explicitly writing out each area
design <- c(
area(1, 1, 9, 9),
area(1,10),
area(2,10),
area(3,10),
area(4,10),
area(5,10),
area(6,10),
area(7,10),
area(8,10),
area(9,10)
)
# example of what the plot area would look like
plot(design)
基本上,我正在尝试自动化上面的design 向量。我尝试使用lapply 创建区域列表,如下所示:
# create some data
vals = seq(1:9)
maxVal <- max(vals)
# use lapply
areaList <- lapply(vals, function(x) area(x, maxVal+1))
这将创建一个区域列表,不包括上面design 对象的第一行...但我不知道如何将其转换为上面的design 对象。
一个天真的尝试(不起作用)是做类似下面的代码(它试图包含design对象的第一行)
designTest <- c(area(1, 1, maxVal, maxVal),
areaList)
关于如何实现这一点的任何建议?
【问题讨论】:
-
area()是否返回具有类特定c()函数的对象类? -
我不确定!?我什至不知道我怎么会发现这个!?例如,
class(area(1,3))的类是:patch_area。但我不确定它是否具有特定于类的c()函数? -
你会使用
?methodsIIRC