这是一个数据可视化问题。我有一个数据库,其中包含一些不断修改(在线更新)的数据。R 中每隔 5 或 10 秒更新一次图表的最佳方法是什么。(无需再次绘制一切皆有可能)?
红色
这是一个数据可视化问题。我有一个数据库,其中包含一些不断修改(在线更新)的数据。R 中每隔 5 或 10 秒更新一次图表的最佳方法是什么。(无需再次绘制一切皆有可能)?
红色
对于离线可视化,您可以生成 PNG 文件并使用ImageMagick将它们转换为动画 GIF 。我用它来演示(不过,这会重绘所有数据):
source(url("http://aliquote.org/pub/spin_plot.R"))
dd <- replicate(3, rnorm(100))
spin.plot(dd)
这会生成几个 PNG 文件,前缀为fig
. 然后,在 un*x shell 上,
convert -delay 20 -loop 0 fig*.png sequence.gif
给出了这个动画(灵感来自Modern Applied Biostatistical Methods using S-Plus , S. Selvin, 1998):
假设您要更新 Rwindows()
或x11()
图形,您可以使用 和 等函数points()
在lines()
图形上添加新点或延长线而无需重绘;但请注意,这不会更改轴范围以适应可能看不见的点。一般来说,使绘图本身是即时的通常是一个好主意——例如,通过将计算工作转移到制作一些可以快速绘制的简化中间表示,例如密度图而不是大量点或降低线图的分辨率(虽然这可能很复杂)。
要在不忙等待的情况下保持 R 会话一段时间,请使用Sys.sleep()
.