Ich verwende facet_grid(), um einige Daten anzuzeigen, und ich habe Facettenlabels, die sich über mehrere Textzeilen erstrecken (sie enthalten das "\ n" -Zeichen).ggplot2: Wie kann man Text von mehrzeiligen Facettenlabels linksbündig ausrichten?
require(ggplot2)
#Generate example data
set.seed(3)
df = data.frame(facet_label_text = rep(c("Label A",
"Label B\nvery long label",
"Label C\nshort",
"Label D"),
each = 5),
time = rep(c(0, 4, 8, 12, 16), times = 4),
value = runif(20, min=0, max=100))
#Plot test data
ggplot(df, aes(x = time, y = value)) +
geom_line() +
facet_grid(facet_label_text ~ .) +
theme(strip.text.y = element_text(angle = 0, hjust = 0))
So durch die hjust = 0 Argument verwendet wird, kann ich links-align Facette Beschriftungstext als eine Einheit.
Was Ich mag würde, ist zu tun, linksbündig auszurichten jede einzelne Textzeile. So sind "Label B" und "sehr langes Label" beide auf der linken Seite ausgerichtet, anstatt zueinander zentriert zu sein (ebenso für "Label C" und "Short"). Ist das in ggplot2 möglich? Vielen Dank im Voraus für Ihre Hilfe.
Danke für die tolle Antwort. Es scheint, dass es eine Menge Kraft darin gibt, zu wissen, wie man das Grid und Grob-Objekte, die ggplot zugrunde liegen, verändert. Kannst du eine gute Einsteiger-Ressource oder Anleitung für die Grid/Grob-Bearbeitung empfehlen? Danke noch einmal. –
Nachdem ich etwas damit herumgespielt habe, denke ich, dass man den Grob holen kann, ohne ihn zuerst mit diesem kleinen Tweak anzeigen zu müssen: 'grab = grid.grabExpr (grid.draw (gp))' –
@Brain_Food AFAIK, da ist nichts bringt die Grid-Bearbeitung von ggplot2-Graphen auf eine umfassende Art und Weise zusammen. Für "Grid", überprüfen Sie die Referenzen auf der Info-Seite von "r-Grid" Tag auf SO. [Paul Murrells Workshop UseR 2015] (https://www.stat.auckland.ac.nz/~paul/useR2015-grid/) geben einige Details zur Bearbeitung von ggplots mithilfe von Rasterfunktionen. Sonst antwortet SO. Außerdem sind 'gtable'-Funktionen nützlich. Baptiste hat [einige Anmerkungen zu 'gtable'] zusammengestellt (https://github.com/baptiste/gtable/wiki/Description) –