【发布时间】:2014-11-29 18:38:21
【问题描述】:
This thread 回答如何在 R 中创建具有实时效果的增量图。
我想用ggplot2而不是R的基础plot做同样的事情。直接从该链接中的答案复制,我尝试了这个,但它没有用:
n=1000
df=data.frame(time=1:n,y=runif(n))
window=100
for(i in 1:(n-window)) {
print(i)
flush.console()
ggplot(df) + geom_line(aes(x=time, y=y), size=0.7) + xlim(i,i+window)
Sys.sleep(.09)
}
我猜ggplot2 的图像渲染效果不同。是否可以用ggplot2创建实时更新效果?
理想情况下,我希望能够显示多个geom_lines。但我猜逻辑是一样的。
另外,当情节在 R-Studio 中“放大”时,是否有可能实现这一点?
【问题讨论】:
-
将整个
ggplot(...)+...+...行包含在print(...)中,如print(ggplot(df)+...)中一样 -
@jlhoward,谢谢。它确实一个接一个地显示图,但这更多地导致“闪烁效果”而不是视觉上的连续流动。如果我减少
Sys.sleep以获得更无缝的效果(例如使用0.01),则不会绘制任何内容。