首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多(rasterVis)水准图

多(rasterVis)水准图
EN

Stack Overflow用户
提问于 2014-02-25 17:37:36
回答 1查看 7.5K关注 0票数 9

我非常绝望地试图调整两幅平面图,一幅是一幅,另一幅是一幅。似乎rasterVis::levelplot不使用par(mfrow = c(...))选项来拆分窗格。使用两个栅格的例子,并排排列在一个新的地块窗口上:

代码语言:javascript
复制
f <- system.file("external/test.grd", package="raster")
r1 <- stack(raster(f),log(raster(f)))
r2 <- stack(raster(f)-500,raster(f)+500)

par(mfrow=c(2,2))
  levelplot(r1)
  levelplot(r2)

在这里,levelplot(r1)是在全尺寸窗口上绘制的,而levelplot(r2)则不幸地在levelplot(r1)上绘制。

我试着四处游玩,用print函数包装对print的调用,它使用splitnewpage = false选项。不幸的是,我没有理解如何正确使用split,所以我最终只会感到沮丧。

我非常感谢你的帮助,谢谢

Andi

EN

回答 1

Stack Overflow用户

发布于 2014-02-25 17:43:16

对于网格-based图形,包括格子(rasterVis的绘图函数的基础)生成的图形,gridExtra函数grid.arrange()所做的+/-与par(mfcol=)用于基本R图形的操作相同。

代码语言:javascript
复制
library(gridExtra)
p1 <- levelplot(r1)
p2 <- levelplot(r2)
grid.arrange(p1, p2, ncol=2)

lattice-specific 编辑:一个替代的解决方案使用split=参数来绘制点阵图(h.t. )的绘图方法print.trellis()。巴普蒂斯特和奥斯卡佩皮尼翁)。split=取四个数字的向量。向量的第3和第4元素给出了显示中的列和行数,而它的第1和第2元素给出了被打印对象的列和行位置。

代码语言:javascript
复制
library(gridExtra)
p1 <- levelplot(r1)
p2 <- levelplot(r2)
print(p1, split=c(1,1,2,1), more=TRUE)
print(p2, split=c(2,1,2,1))
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22021889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档