我正在使用gridR 中的包设计一个交互式绘图。作为交互性的一部分,我反复删除并重新创建绘图的各个部分。然而,网格元素的总数(使用grid.ls()命令获得的)保持不变;我创建的所有内容之前都被删除了。
问题如下 - 一旦我经历了几次创建和删除的循环,我对图形所做的每一次删除,无论多么小,都会导致绘图的所有交互部分(那些我一直重复删除和创建的部分)闪烁。
这是我能想到的最简单的例子 - 首先运行此代码来设置grid图形,然后重复删除并重新创建某些元素
library(grid)
pushViewport(viewport())
for (x in seq(0, 1, length=5))
{
for (y in seq(0, 1, length=5))
{
pushViewport(viewport(x = x, y = y, width=1/5, height=1/5, name=paste("foo", x, y, sep="")))
grid.rect()
pushViewport(viewport(x = 0, 0, width=1/4, height=1/4, name="bar1"))
grid.circle(name="testing")
grid.text("123")
upViewport()
pushViewport(viewport(x = 1, 0, width=1/4, height=1/4, name="bar2"))
grid.circle(name="testing")
grid.text("123")
upViewport()
pushViewport(viewport(x = 0, 1, width=1/4, height=1/4, name="bar3"))
grid.circle(name="testing")
grid.text("123")
upViewport()
pushViewport(viewport(x = 1, 1, width=1/4, height=1/4, name="bar4")) …Run Code Online (Sandbox Code Playgroud) r ×1