Ich versuche eine GIF-Animation in R zu erstellen. Ich habe ein Array von Matrizen, die ich in eine GIF-Animation konvertieren möchte. Meine Strategie ist aus diesem Beispiel inspiriert:Fehler beim Ausführen von ImageMagick von R: Ungültiger Parameter
http://ryouready.wordpress.com/2010/11/21/animate-gif-images-in-r-imagemagick/
wo der folgende Code 11 PNG-Bilder mit dem „png“ -Funktion in R. Als nächstes erzeugt er für den externen ImageMagick-Programm ruft „convert“ zu kompilieren die GIF-Animation.
dir.create("examples")
setwd("examples")
# Animated countdown from 10 to "GO!".
png(file="example%02d.png", width=200, height=200)
for (i in c(10:1, "G0!")){
plot.new()
text(.5, .5, i, cex = 6)
}
dev.off()
# convert the .png files to one .gif file using ImageMagick.
system("convert -delay 80 *.png example_1.gif")
#shell("convert -delay 80 *.png example_1.gif")
Das Problem ist, dass R scheint nicht die exe-Datei "convert" finde, die ein Teil von ImageMagick ist und installiert auf dem C-Laufwerk (C: \ Programme \ ImageMagick-6.8.5 -Q16). In den Kommentaren zu der Website i am linking to earlier wird es für Windows-Benutzer empfohlen, "Shell" anstelle von "System" zu verwenden, um externe Programme auszuführen, aber keiner der beiden funktioniert. Die Fehlermeldung ist
Invalid parameter - 80
Warning message:
running command 'convert -delay 80 *.png example_1.gif' had status 4
Ich habe versucht, das Windows-PATH Umgebungsvariable in den Systemen Eigenschaften zu ändern, wie in diesen answer vorgeschlagen, aber der PATH-Variable wurde allready corectlly auf meinem System definiert. Ich habe auch versucht, die ganze Zeichenfolge der Datei convert.exe, aber auch ohne Glück ...
Wie kann ich ImageMagick durch R laufen?
Specs: Windows 7 Servicepack 1, R 3.0.0
Vielen Dank im Voraus ...
Die Fehlermeldung, die Sie zitieren angibt, ist nicht, dass R nicht finden 'convert' ist ... Was Fehlermeldung, wenn Sie den vollständigen Pfad verwenden Sie bekommen? Eine Möglichkeit ist, dass Sie in Ihrem 'PATH' ein anderes' Konvertierungs'-Programm haben. Falls Sie das Verzeichnis am Ende der Umgebungsvariablen 'PATH' hinzugefügt haben, versuchen Sie es stattdessen an den Anfang zu stellen. – flodel
Was gibt 'system (" wo convert ", intern = TRUE) dir? – flodel
Der allererste Dateipfad in der 'convert' -Variablen ist der ImageMagick-Dateipfad, der nur noch einmal überprüft wird. Wenn ich den Code "system" ("C:/Programme/ImageMagick-6.8.5-Q16/konvertiere -delay 80 * .png example_1.gif") "scheinbar nichts passiert. Wenn ich shellshell ("C:/Programme/ImageMagick-6.8.5-Q16/konvertiere -delay 80 * .png example_1.gif") 'Ich bekomme die Fehlermeldung: '' C:/Program 'war nicht als interne oder externe Befehls-, Programm- oder Batch-Datei erkannt.' und dann eine ganze Reihe von R-Fehlern. – Duffau