Es hängt ein wenig davon ab, was Ihr Endziel ist.
Schneller und schmutziger Hack für Echtzeit-Demonstrationen
Die Verwendung Sys.sleep(seconds)in einer Schleife, in der secondsdie Anzahl der Sekunden zwischen Frames angegeben wird, ist eine praktikable Option. Sie müssen die Parameter xlimund ylimin Ihrem Aufruf festlegen , plotdamit sich die Dinge wie erwartet verhalten.
Hier ist ein einfacher Demonstrationscode.
# 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)
}
Dies funktioniert ziemlich gut, insbesondere wenn X-Windows als Fenstersystem verwendet wird. Ich habe festgestellt, dass Macs quartz()leider nicht gut spielen.
Animierte GIFs
Wenn Sie etwas benötigen, das neu verteilt, auf einer Webseite usw. veröffentlicht werden kann, sehen Sie sich die write.gifFunktion im caTools- Paket an. Das Anzeigen der Hilfe auf write.gifenthält einige schöne Beispiele, darunter einige Animationen - eine mit einem sehr schönen Beispiel, das das Mandelbrot-Set verwendet.
Siehe auch hier und hier .
Feinere Steuerung und schickere Animationen
Es gibt ein Animationspaket , das ziemlich leistungsfähig aussieht. Ich habe es jedoch nicht selbst verwendet, daher kann ich keine wirklichen Empfehlungen geben.
Ich habe einige gute Beispiele für die Ausgabe dieses Pakets gesehen und sie sehen ziemlich gut aus. Vielleicht ist eines der "Highlights" die Möglichkeit, eine Animation in ein PDF einzubetten.