Hallo, dieser einfache Code (und alle meine Skripte von heute Morgen) hat mir in ggplot2 einen außermittigen Titel gegeben
Ubuntu version: 16.04
R studio version: Version 0.99.896
R version: 3.3.2
GGPLOT2 version: 2.2.0
Ich habe das oben genannte heute Morgen frisch installiert, um dies zu beheben ....
dat <- data.frame(
time = factor(c("Lunch","Dinner"), levels=c("Lunch","Dinner")),
total_bill = c(14.89, 17.23)
)
# Add title, narrower bars, fill color, and change axis labels
ggplot(data=dat, aes(x=time, y=total_bill, fill=time)) +
geom_bar(colour="black", fill="#DD8888", width=.8, stat="identity") +
guides(fill=FALSE) +
xlab("Time of day") + ylab("Total bill") +
ggtitle("Average bill for 2 people")
... + theme(plot.title = element_text(hjust = 0.5))
Antworten:
Von der Veröffentlichung Nachricht
ggplot 2.2.0
: „Die Haupthandlung Titel jetzt linksbündig zu einem besseren Arbeit besser mit einem Untertitel“ . Siehe auch dasplot.title
Argument in?theme
: "Standardmäßig linksbündig".Wie von @J_F hervorgehoben, können Sie hinzufügen,
theme(plot.title = element_text(hjust = 0.5))
um den Titel zu zentrieren .quelle
... theme(plot.title = element_text(hjust = 'center'))
erhalte ich die Fehlerwarnmeldungen:1: In unit(rep(xp, n), "npc") : NAs introduced by coercionv2: In validDetails.text(x) : NAs introduced by coercion
und keinen Titel. Ist das ein Fehler?hjust
muss numerisch sein.theme(plot.title = element_text(hjust = 0.5))
, aber es hat nicht geklappt, es ist komisch.Wie in der Antwort von Henrik angegeben , werden Titel standardmäßig ab ggplot 2.2.0 linksbündig ausgerichtet. Titel können zentriert werden, indem Sie dies dem Plot hinzufügen:
Wenn Sie jedoch viele Diagramme erstellen, kann es mühsam sein, diese Zeile überall hinzuzufügen. Man könnte dann auch das Standardverhalten von ggplot mit ändern
Sobald Sie diese Zeile ausgeführt haben, verwenden alle anschließend erstellten Diagramme die Themeneinstellung
plot.title = element_text(hjust = 0.5)
als Standard:Um zu den ursprünglichen Standardeinstellungen von ggplot2 zurückzukehren, können Sie entweder die R-Sitzung neu starten oder das Standarddesign mit auswählen
quelle
Das
ggeasy
Paket hat eine Funktion, die aufgerufen wirdeasy_center_title()
, um genau das zu tun. Ich finde es viel ansprechender alstheme(plot.title = element_text(hjust = 0.5))
und es ist so viel einfacher, sich daran zu erinnern.Beachten Sie, dass Sie zum Schreiben dieser Antwort die Entwicklungsversion
ggeasy
von GitHub installieren müssen, um sie verwenden zu könneneasy_center_title()
. Sie können dies durch Ausführen tunremotes::install_github("jonocarroll/ggeasy")
.quelle