我的目标是构建一个水平图(来自 lattice 包),其中 4 个或更多单独的图共享相同的颜色键。虽然这似乎使用函数相对简单,但我无法找到使用数据矩阵的解决方案。只有一个矩阵的工作级别图示例:
d <- replicate(10,rnorm(10))
levelplot(d)
我找到了使用 print 和 split 在同一屏幕上显示所有 4 个级别图的部分解决方案,但这需要我关闭颜色键,或者在每个图上显示它。这两种解决方案都不完全令人满意。
如果我在 levelplot 中使用 layout-option,如下所示:
levelplot(d, layout=c(2,2))
,我得到了想要的布局,有一个大的颜色键,主要和 xlab/ylab,但只有一个 levelplot 打印。
我一直在尝试构建一个能产生预期结果的公式,但恐怕我对数据框、数组和矩阵的理解还不够深入。如果有人知道可行的解决方案,我将不胜感激。我想象的是(不工作的代码):
d1 <- replicate(10,rnorm(10))
d2 <- replicate(10,rnorm(10))
d3 <- replicate(10,rnorm(10))
d4 <- replicate(10,rnorm(10))
d <- list(d1,d2,d3,d4)
di <- c(1,2,3,4)
levelplot(x ~ y | di, data = d, layout=c(2,2))
注意!避免使用矩阵不是一种选择。其中一些是从原始文本文件中获得的。
先感谢您,
-J.P