首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在grid.newpage中使用R基图?

如何在grid.newpage中使用R基图?
EN

Stack Overflow用户
提问于 2013-02-21 18:22:43
回答 1查看 10.4K关注 0票数 6

有没有可能在grid package的grid.newpage中“强制”R基图?例如,这可以很好地工作:

代码语言:javascript
复制
library(grid)
grid.newpage()
vp1 <- viewport(x=0,y=0.5,width=0.5, height=0.5, just = c("left", "bottom"))
vp2 <- viewport(x=0.5,y=0,width=0.5, height=0.5, just = c("left", "bottom"))
pushViewport(vp1)
grid.rect()
grid.text("vp1", 0.5, 0.5)
upViewport()
pushViewport(vp2)
grid.rect()
grid.text("vp2", 0.5, 0.5)

但是如果我尝试这样的东西:

代码语言:javascript
复制
grid.newpage()
vp1 <- viewport(x=0,y=0.5,width=0.5, height=0.5, just = c("left", "bottom"))
vp2 <- viewport(x=0.5,y=0,width=0.5, height=0.5, just = c("left", "bottom"))
pushViewport(vp1)
grid.rect()
print(plot(1,2))
grid.text("vp1", 0.5, 0.5)
upViewport()
pushViewport(vp2)
grid.rect()
print(plot(1,2))

R基础图刚刚覆盖了grid.newpage。使用par(new=T)也无济于事。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-23 18:43:26

因为没有人回答这个问题,所以我自己来做。正如Andrie所说,这个问题的答案是here。您需要gridBase包中的gridFIG()函数在plot.new()中绘制R底图,而不是在grid.newpage()中绘制

代码语言:javascript
复制
library(grid)
library(gridBase)
plot.new()
vp1 <- viewport(x=0,y=0.5,width=0.5, height=0.5, just = c("left", "bottom"))
vp2 <- viewport(x=0.5,y=0,width=0.5, height=0.5, just = c("left", "bottom"))
pushViewport(vp1)
grid.rect()
grid.text("vp1", 0.5, 0.5)
par(new=TRUE, fig=gridFIG())
plot(1,2)
upViewport()
pushViewport(vp2)
grid.rect()
grid.text("vp2", 0.5, 0.5)
par(new=TRUE, fig=gridFIG())
plot(1,2)

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14999802

复制
相关文章

相似问题

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