这是一个表示:
simple_plot <- function(col = "black") {
plot(x = 1:10, y = 1:10, col = col)
}
## wrapper function with a "complex" layout
plot_fun <- function() {
mat <- matrix(c(1, 2, 3, 4), nrow = 2, ncol = 2, byrow = TRUE)
lay <- layout(mat = mat)
simple_plot(col = "red")
simple_plot(col = "blue")
simple_plot(col = "green")
simple_plot(col = "black")
}
par(mfrow = c(2, 1))
simple_plot()
plot_fun() # simple_plot() would obviously work
plot_fun()
调用与常规 plot()
调用(作为一个“绘图对象”)类似地对待,如果这有意义的话......grid.arrange()
或类似的方法。par(mfrow = ...)
的图有一些相似之处(R | 组合内部使用 par(mfrow = ...) 的图) - 但是,那里提出的解决方案似乎有点老套,我想知道是否有一个简单、优雅的解决方案(或澄清为什么我的方法很幼稚)...