Teile des ggplot-PDF-Bildes verschwinden

Teile des ggplot-PDF-Bildes verschwinden

Ich verwende die tufte-bookDokumentklasse und die Vorlage. Ich habe ggplot2Bilder in das PDF-Format exportiert und sie dann in LaTeX- figureUmgebungen eingefügt.

Alles lief gut, bis eines Tages einige der Punkte in den Diagrammen einfach... verschwanden. Sie waren in früheren Versionen des Dokuments vorhanden. Insbesondere Punktform 16 inggplot2(die Standardform für geom_point) wird nicht mehr angezeigt. Andere Formen werden problemlos angezeigt. Ich habe versucht,ggplot2, habe versucht, es loszuwerden tufte-book(wie im Reprex), keine Chance. Ich habe auch versucht, sowohl mit xelatex als auch mit pdflatex zu bauen. Das ist umso verwirrender, weil esgebrauchtfunktioniert einwandfrei und ich kann mir nicht vorstellen, was ich geändert haben könnte. Ich bin für jeden Tipp dankbar.

Als Referenz ist hier die tatsächlicheggplot2-generiertes PDF, das ich einschließe:

Aktuelles Bild

und so wird es in meinem LaTeX-Dokument angezeigt (in der Tufte-Latex-Version, obwohl das Problem auch in der Documentclass{Article}-Version im Reprex auftritt):

Bild in LaTeX

Hier ist der Code. Ich glaube nicht, dass ich hier etwas Ungewöhnliches mache:

So erstellen Sie das Diagramm:

library(tidyverse)

# Police and crime
library(wooldridge)
data(crime4)

ggplot(crime4, aes(x = polpc, y = crmrte)) + 
  geom_point() + 
  theme_minimal() + 
  scale_x_log10() + 
  scale_y_log10() + 
  labs(x = "Police per Capita (log scale)",
       y = "Crime Rate (log scale)")
ggsave('crime1.pdf', width = 6, height = 5)

Und das LaTeX-Dokument selbst

\documentclass{article}

\usepackage{graphicx}

\begin{document}

\begin{figure}[h!]
    \caption{Police Presence and Crime Rate by County, North Carolina 1981-1987}
    \label{fig:causaldiagrams-crime1}
    \includegraphics{"crime1.pdf"}
\end{figure}

\end{document}

Antwort1

Leider kann ich dazu keinen Kommentar abgeben, deshalb muss ich antworten: Fehlen die Punkte in der Vorschau in Ihrem LaTex-Editor oder auch im kompilierten Dokument, wenn Sie es aus einem anderen PDF-Viewer öffnen? Ich hatte das gleiche Problem und die Punkte fehlten nur im integrierten TeXmaker-PDF-Viewer, aber nicht in anderen Programmen... In meinem Fall fehlten alle in R erzeugten runden Punkte (pch in {16, 19, 20, 21}), aber es scheint, als ob es nurein Problem des PDF-Viewers(also die Symbole, die es versteht). Versuchen Sie, das gesamte Dokument, das Sie kompiliert haben, mit demselben PDF-Viewer zu öffnen, der Ihr Plot-PDF korrekt angezeigt hat. Wenn es funktioniert, war es die ganze Zeit der PDF-Viewer.

Beachten Sie außerdem, dass sich der „gleiche“ PDF-Viewer je nach Betriebssystem unterschiedlich verhalten kann. Ich dachte zuerst, es läge am Betriebssystem, da TeXmaker die Punkte unter Linux anzeigte, unter Windows jedoch nicht. Ich habe also „dasselbe“ zweimal mit unterschiedlichen Ergebnissen gemacht.

Ich nehme an, es ist so, als hätte Marijin eine Frage zum von R verwendeten Kreissymbol gestellt, das nicht richtig angezeigt wird. Sie können entweder das vorgeschlagene cairo_pdfGerät anstelle von pdf verwenden oder ein anderes Symbol anstelle eines Kreises. Sie könnten auch experimentieren mit

geom_text(label = "\u2022", size = 10)

(erfordert möglicherweise das Paket Unicode(?)). Wenn Sie Text statt Punkte zeichnen, können Sie verschiedene Symbole oder Zeichenfamilien ausprobieren.

Update: Ich habe auch festgestellt, dass das Einstellen der Deckkraft der Punkte auf einen Wert ungleich 1 (z. B. in ggplot einfach einstellen alpha=0.99) R daran hindert, das „problematische“ ZapfDingbats-Zeichen zu verwenden. Könnte einen Versuch wert sein, bei mir scheint es zu funktionieren.

verwandte Informationen