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_line
。但我猜逻辑将是相同的。
此外,当R-Studio中的情节是“缩放”时,是否可以实现此目的?
答案 0 :(得分:6)
目前尚不清楚你要去哪里,但这段代码会产生一个平滑呈现的HTML动画。创建动画需要一段时间(约一分钟)。
library(animation)
library(ggplot2)
# your data
n <- 1000
df <- data.frame(time=1:n,y=runif(n))
window <- 100
# create the animation
saveHTML({
for(i in 1:(n-window)) {
print(ggplot(df) + geom_line(aes(x=time, y=y), size=0.7) + xlim(i,i+window))
}
})