Depende un poco de cuál sea su objetivo final.
Hack rápido y sucio para demostraciones en tiempo real
El uso Sys.sleep(seconds)
en un bucle donde seconds
indica el número de segundos entre cuadros es una opción viable. Deberá establecer los parámetros xlim
y ylim
en su llamada plot
para que las cosas se comporten como se espera.
Aquí hay un código de demostración simple.
# Just a quick test of Sys.sleep() animation
x <- seq(0,2*pi, by=0.01)
y <- sin(x)
n <- 5
pause <- 0.5
ybnds <- quantile(n*y, probs=c(0,1))
x11()
# Draw successively taller sinewaves with a gradually changing color
for( i in 1:n )
{
plot(x, i*y, type="l", lwd=2, ylim=ybnds, col=topo.colors(2*n)[i])
Sys.sleep(pause)
}
Esto funciona bastante bien, especialmente usando X-Windows como el sistema de ventanas. Descubrí que Mac quartz()
no funciona bien, desafortunadamente.
GIF animados
Si necesita algo que pueda redistribuirse, publicarse en una página web, etc., mire la write.gif
función en el paquete caTools . Mostrar ayuda en write.gif
proporciona varios ejemplos agradables, que incluyen un par de animaciones, una con un ejemplo bastante bueno usando el conjunto de Mandelbrot.
Ver también aquí y aquí .
Control más ajustado y animaciones más sofisticadas
Hay un paquete de animación que se ve bastante capaz. Sin embargo, no lo he usado, así que no puedo dar ninguna recomendación real de ninguna manera.
Yo he visto algunos buenos ejemplos de salida de este paquete y se ven bastante bien. Quizás uno de los "aspectos más destacados" es la capacidad de incrustar una animación en un PDF.