【发布时间】:2013-05-14 13:27:32
【问题描述】:
如何将多个格子图绘制到使用 lapply 函数生成图的单个格子图上?
以下是我迄今为止使用内置的mtcars 数据集进行的尝试的演示。
require(lattice)
response <- c("cyl","disp","hp","drat")
par(mfrow=c(2,2))
lapply(response, function(variable) {
print(xyplot(mtcars$mpg ~ mtcars[variable]))
})
这会产生所需的图。但是它似乎忽略了par(mfrow=c(2,2)) 指令并分别绘制每个图。
【问题讨论】:
-
lapply旨在迭代一个应用函数的列表,其中每个返回值都用作返回列表中的一个条目。如果不返回值,for更合适。 -
是的。
grid绘图函数会忽略par(mfrow=.)。请仔细阅读?Lattice的帮助页面。
标签: r plot grid-layout lattice lapply