Ich weiß, es ist bevorzugt, wenn Variablennamen keine Leerzeichen enthalten. Ich habe eine Situation, in der ich Diagramme in Publikationsqualität benötige, also müssen Achsen und Legenden korrekt formatierte Beschriftungen haben, dh mit Leerzeichen. So zum Beispiel in der Entwicklung Ich könnte Variablen „Pct.On.OAC“ und Age.Group genannt, aber in meinem letzten Plot ich brauche „% auf OAC“ und „Altersgruppe“ erscheinen:Wie behandelt man Leerzeichen in Spaltennamen?
'data.frame': 22 obs. of 3 variables:
$ % on OAC : Factor w/ 11 levels "0","0.1-9.9",..: 1 2 3 4 5 6 7 8 9 10 ...
$ Age Group : Factor w/ 2 levels "Aged 80 and over",..: 1 1 1 1 1 1 1 1 1 1 ...
$ Number of Practices: int 47 5 33 98 287 543 516 222 67 14 ...
Aber wenn ich versuche, diese zu zeichnen:
ggplot(dt.m, aes(x=`% on OAC`,y=`Number of Practices`, fill=`Age Group`)) +
geom_bar()
)
kein Problem damit. Aber wenn ich eine Facette hinzu:
ggplot(dt.m, aes(x=`% on OAC`,y=`Number of Practices`, fill=`Age Group`)) +
geom_bar() +
facet_grid(`Age Group`~ .)
ich Error in
[.data.frame (base, names(rows)) : undefined columns selected
Wenn ich ändern Age Group
-Age.Group
dann funktioniert es in Ordnung, aber wie gesagt, ich will nicht den Punkt um in der Titellegende angezeigt zu werden.
Also meine Fragen sind:
- Gibt es eine Abhilfe für das Problem mit der Facette?
- Gibt es einen besseren allgemeinen Ansatz, um das Problem von Leerzeichen (und anderen Zeichen) in Variablennamen zu behandeln, wenn ich möchte, dass der letzte Plot sie enthält? Ich nehme an, ich kann sie manuell überstülpen, aber das scheint eine Menge herumzualbern.
Verwenden scale_fill (name = "Altersgruppe") oder ähnliches. – mnel
@mnel entschuldigung, ich bin dir nicht gefolgt - wie löst das das problem mit dem facet_grid? Ich benutze 'scale_fill (name =" Altersgruppe ")' _insteady_? –