Ich versuche eine GIF-Animation in R zu erstellen. Ich habe ein Array von Matrizen, die ich in eine GIF-Animation umwandeln möchte. Meine Strategie ist von diesem Beispiel inspiriert:
wobei der folgende Code 11 PNG-Bilder mit der "png" -Funktion in R erzeugt. Als nächstes wird das externe ImageMagick-Programm "convert" benötigt, um die GIF-Animation zu kompilieren.
%Vor%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 auf der Website i zu früher bin Verknüpfung, wird vorgeschlagen, für die Benutzer von Windows zu verwenden "Shell" von instead "System" führen Sie externe Programme aus, aber keiner der beiden funktioniert. Die Fehlermeldung ist
%Vor%Ich habe versucht, das Windows-PATH Umgebungsvariable in den Systemen Eigenschaften zu ändern, wie es in diesem Antwort , aber der PATH-Variable war bereits auf meinem System definiert. Ich habe auch versucht, den ganzen String der Datei convert.exe anzugeben, aber auch ohne Glück ...
Wie kann ich ImageMagick durch R laufen lassen?
Spezifikationen: Windows 7 Servicepack 1, R 3.0.0
Vielen Dank im Voraus ...
Unter Windows gibt es mehrere convert.exe-Befehle, die alle im PATH enthalten sind. Sie müssen also den Pfad zur rechten ausführbaren Datei convert.exe angeben. In meinem Fall hatte ich es im LyX-Ordner (Sie finden es jedoch auch in der ImageMagick-Installation). Seien Sie vorsichtig mit den Anführungszeichen, den umgekehrten Schrägstrichen und dem Abstand, wenn Sie einfügen. Z.B. aus dem R:
%Vor%Ich bin ein Fenster 10 Benutzer, nachdem das Arbeitsverzeichnis definiert, ich habe es in R arbeitet mit
%Vor%innerhalb von cmd bedeutet jeder Befehl folgendes
convert = offene Konvertierungsfunktion von ImageMagick
-set delay x = setze die Verzögerungszeit zwischen jedem Frame auf x (1000 = 1 Sekunde)
-loop 0 = Schleife für immer, wenn sie auf 1 gesetzt ist, wird sie einmal durch die Bilder gehen
*. [Bildtyp] = und Datei von. [Bildtyp]
[Name des Ausgabe-Gifs] .gif = neue .gif-Datei wie
speichernIch habe es zuerst in der Eingabeaufforderung ausgeführt, indem ich zu dem Verzeichnis navigiert habe und die Zeile ausgeführt habe
%Vor%Vorher habe ich gebraucht -delay = 80 eher, als -set Verzögerung 80 in cmd und habe Fehler: konvertieren: ungültiges Argument für die Option '-delay':. = @ Fehler / convert.c / ConvertImageCommand / 1277
In R mit dem Befehl system () mit der richtigen "-set delay x" bekam ich Fehler:
%Vor%andere Fehler in der Shell ()
%Vor%Ich habe es in R mit shell () danach ausgeführt und es scheint gut zu funktionieren
%Vor%Schau dir auch diesen Thread an
Ich weiß, dass jemand anderes bereits die Lösung für Ihr Problem gefunden hat, aber es gibt einen einfacheren Weg, es zu lösen, ohne den gesamten Pfad in system () einzubeziehen. Einfach ani.options(convert = 'pathway/convert.exe')
setzen
nach dem Laden des Animationspakets.
Nach dem Versuch, alle diese Fixes sowie diese und diese ohne Erfolg, ich gebrauchte alternative Software, um die Konvertierung durchzuführen, von denen einige hier beschrieben sind. Ich bin ein Windows-Benutzer und fand die einfachen Anweisungen auf dieser Website für VirtualDub , um diese Aufgabe schnell zu erledigen.
Tags und Links r animation shell imagemagick system