
Normalerweise exportiere ich ggplot2-Diagramme aus R mit „Speichern unter“ als PDF und das funktioniert gut. Dann verwende ich \includegraphics
LaTex, um die Abbildung einzufügen. Das Problem ist, dass die Datenmenge in diesen aus R exportierten PDFs anscheinend groß ist, z. B. über 600 KB pro Dokument. Wenn ich auf diese Weise mehrere PDF-Dokumente exportiere, ist das Öffnen des End-PDFs sehr langsam.
Meine Frage ist: Wie kann ich entweder R ändern oder anders als LaTex laden, sodass das Enddokument nicht so groß ist und die Qualität der Plots dennoch sehr hoch ist?
Antwort1
Wenn es so weit kommt, dass eine PDF-Datei für Ihren Endverbrauch größer ist als eine PNG-Datei mit hoher Auflösung, erstellen Sie eine PNG-Datei mit hoher Auflösung. Für eine Abbildung, die beim Drucken 4 Zoll im Quadrat auf einer Seite groß sein soll, benötigen Sie beispielsweise 300 dpi x 4 = 1200 Pixel. Gehen Sie also folgendermaßen vor:
png(file="plot1.png",width=1200,height=1200)
makemyplot()
dev.off() # close the png file
Der Grenzwert hierfür hängt davon ab, wie viel der PNG-Komprimierungsalgorithmus leisten kann und wie viel überlappende „Tinte“ Sie haben – die gesamte Tinte in einer PDF-Datei benötigt Speicherplatz, aber Sie können in einer PNG-Datei an derselben Stelle eine Million Punkte erstellen und es werden nur wenige Bytes sein.
Es gibt auch verschiedene PDF-Komprimierungstools, aber ich nehme an, Sie verwenden Windows und ich verwende Unix-Befehlszeilentools. Wo wir gerade bei Befehlszeilentools sind: Sie können vorhandene PDFs wahrscheinlich mit dem Tool „Konvertieren“ aus der ImageMagick-Suite in Raster-PNGs konvertieren.
Aber 600k ist nichtDasgroß. Ich arbeite an einem Buch mit 2 Megabyte großen PDFs auf fast jeder Seite.