Speichern von Plots in R als GIFs

8

In R verwende ich die Funktion savePlot , um Graphen in Bilddateien zu speichern. Aber mein Kollege kann nur .jpgs und .gifs öffnen (wahrscheinlich, weil er im Urlaub ist und E-Mails auf seinem Mobiltelefon liest). Ich hasse es, JPEGs zu erstellen, weil besonders die Boxplots sehr hässlich aussehen (Whisker verschwommen usw.). Die Funktion savePlot unterstützt jedoch nur die folgenden Typen:

%Vor%

Wie kann ich Plot in GIF in R speichern?

BEARBEITEN: Wenn möglich, sollte die ideale Lösung funktionieren, ohne ImageMagick zu installieren (so dass das R-Skript leicht portierbar ist).

    
TMS 19.08.2013, 15:37
quelle

1 Antwort

11

R hat keinen nativen GIF-Grafiktreiber, meist (vollständig?) aufgrund der Patent-Belastungen des GIF-Formats: siehe Ссылка .

Es gibt eine Funktion im Paket caTools ( write.gif() ), die speziell für das Schreiben von Bildern entwickelt wurde. Wenn Sie es verwenden möchten, müssen Sie etwas hacky tun, um Ihre Zeichnung in ein Bild zuerst zu konvertieren (z. B. als PNG speichern und dann in R als Bild zurücklesen). Zum Beispiel:

%Vor%

?write.gif() hat eine Menge von Sachen über Farbindizierung, die ich nicht gelesen habe, aber das könnte für komplexere Graphen wichtig sein ...

Das animation -Paket hat eine saveGIF() -Funktion, um GIFs zu speichern, aber (1) ist zum Speichern von Multi-Frame-Animationen (keine allgemeinen Grafiken) vorgesehen, und (2) macht es durch Aufruf von ImageMagick.

Es ist einfacher, diese Funktion selbst zu konstruieren.

  • installiere ImageMagick ( Ссылка )
  • Speichern Sie als PNG und verwenden Sie ImageMagick zum Konvertieren.

Zum Beispiel:

%Vor%

Natürlich können Sie beides in einer Funktion verwenden, wenn Sie sie regelmäßig verwenden möchten.

UPDATE : Ich habe noch eine Weile damit verbracht, eine reine R-Lösung zu bekommen, habe aber noch keine funktionierende Lösung. Vorschläge oder Änderungen willkommen ...

%Vor%

Die Hauptfunktion:

%Vor%     
Ben Bolker 19.08.2013 16:29
quelle

Tags und Links