Ändern von Schriften in ggplot2
Einmal, änderte ich meine ggplot2
Schrift mit der Verwendung von windowsFonts(Times=windowsFont("TT Times New Roman"))
zu ändern. Jetzt kann ich es nicht bekommen.
In versuchen family=""
im ggplot2
theme()
ich kann nicht scheinen, erzeugen eine änderung in Schriften wie compiliere ich die MWE unten mit verschiedene font-Familien.
library(ggplot2)
library(extrafont)
loadfonts(device = "win")
a <- ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() +
ggtitle("Fuel Efficiency of 32 Cars") +
xlab("Weight (x1000 lb)") + ylab("Miles per Gallon") +
theme(text=element_text(size=16,
# family="Comic Sans MS"))
# family="CM Roman"))
# family="TT Times New Roman"))
# family="Sans"))
family="Serif"))
print(a)
print("Graph should have refreshed")
R ist wieder eine Warnung font family not found in Windows font database
, aber es war ein tutorial war ich nach (wenn ich es finden kann werde ich wieder aktualisieren, hier der link) , sagte, dies sei normal und kein problem. Auch, irgendwie funktionierte dies an einer Stelle, weil mein Diagramm einmal einige arial oder helvitica-schriftart. Ich denke, dies war schon immer eine Gegenwart, die Warnung auch während der ersten Zeiten der migration.
UPDATE
wenn ich windowsFonts()
meine Ausgabe ist
$serif [1] "TT Times New Roman"
$sans [1] "TT Arial"
$mono [1] "TT Courier New"
Aber das ist nachdem ich lief font_import()
also ich kann nur sagen, dass meine Schriften werden nicht gespeichert an der richtigen Stelle. Der code ausgeführt, der die font_import()
Anfrage tatsächlich lädt die Bibliotheken mit:
LocalLibraryLocation <- paste0("C:\\Users\\",Sys.getenv("USERNAME"),"\\Documents","\\R\\win-library\\3.2");
.libPaths(c(LocalLibraryLocation, .libPaths()))
Auch,
windowsFonts
verschwand aus grDevices nach 3.4.1. Den code hier ein Update benötigt.siehe dieser und dieser. Sie müssen nur geben Sie den richtigen Pfad in Linux
InformationsquelleAutor EngBIRD | 2015-12-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sie verpasste eine Initialisierungs-Schritt, denke ich.
Können Sie sehen, welche Schriftarten, die Sie zur Verfügung haben, mit dem Befehl
windowsFonts()
. Zum Beispiel die mine sieht aus wie dieses, als ich begann, mich auf diese:Nach der Installation des Pakets extraFont und läuft
font_import
wie diese (es dauerte etwa 5 Minuten):Hatte ich viele mehr verfügbar - wohl zu viele, sicherlich zu viele, um Sie hier aufzulisten.
Dann habe ich versucht den code:
nachgeben:
Update:
Finden Sie den Namen der schriftart, die Sie für die
family
parameter derelement_text
mit dem folgenden code-snippet:Dann:
ergibt:
mono||sans
(diese sehen nicht anders bisher) undserif``, but not the actually name like
"TT Times New Roman", but additionally, I not sure that my
loadFonts " war erfolgreich. Wenn ich Anrufefonts()
ich habe eine Liste von nahezu 300 Schriften, aber meine Vermutung ist, Sie nicht installiert zu lokalen Umfeld zugänglich zu machen, um das windows-Gerät. Ich bin nicht sicher, ob das noch Sinn macht, aber ich habe versucht, ein update zu meiner ursprünglichen Frage mit den snippets, die helfen könnten. Nochmals vielen Dank!Hinzugefügt einige weitere code eine Antwort zu geben.
Vielen Dank für diesen Namen-snippet-update, es sieht sehr hilfsbereit, wie hat sich Ihre comic sans Ms Beispiel erzeugen den richtigen Auftritt, wenn die Familie ist die einzige Zeichenfolge my-installation erkennt.
Glück. In dieser Schrift (und viele andere), der name der Familie ist der gleiche wie der Wert Familie. So
wf[which(wf=="Comic Sans MS")]
Erträge$``Comic Sans MS`` [1] "Comic Sans MS"
Downvoted für die comic sans.
InformationsquelleAutor Mike Wise
Andere Möglichkeit ist die Verwendung
showtext
Paket unterstützt mehr Typen von Schriftarten (TrueType, OpenType, Type 1-Schriften, etc.) und mehr Grafik-Geräte, und vermeidet die Verwendung von externer software wie Ghostscript.Importieren, Google Fonts
Laden Sie die schriftart aus dem aktuellen Suchpfad in
showtext
Handlung: benötigen Sie zum öffnen der Windows graphics device als
showtext
funktioniert nicht gut mit RStudio built-in graphics deviceMeine Freude !!!
tausend mal danke... das Paket macht es super einfach, um a) zu überprüfen, welche Schrift-Familien, die Sie zur Verfügung haben für ggplot von font_families() - b) achten Sie auf die schriftart-Datei, die Namen von font_files() - c) hinzufügen der schriftart-Datei eine schriftart-Familie, die von font_add(Familie, font_file_name). Genial!!!
froh, dass ich helfen konnte 🙂
wichtig: Sie müssen alle installieren Sie die XQuartz-Paket von xquartz.org erste, oder es wird ein nicht näher bezeichneten Fehler zu versuchen, laden Sie die Bibliothek.
InformationsquelleAutor Tung
Spät zur party, aber vielleicht von Interesse für Leute, die das hinzufügen von benutzerdefinierten Schriftarten, um Ihre
ggplots
innerhalb einershiny
app auf shinyapps.io.Können Sie:
www
Verzeichnis: z.B.IndieFlower.ttf
aus hierDies führt zu der folgenden oberen Abschnitt im inneren der
app.R
Datei:Einer vollständigen Beispiel-app finden hier.
InformationsquelleAutor symbolrush