Hai kode sederhana ini (dan semua skrip saya dari pagi ini) telah mulai memberi saya judul di luar ggplot2
Ubuntu version: 16.04
R studio version: Version 0.99.896
R version: 3.3.2
GGPLOT2 version: 2.2.0
Saya baru saja menginstal di atas pagi ini untuk mencoba dan memperbaiki ini ....
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))
Jawaban:
Dari berita rilis
ggplot 2.2.0
: "Judul plot utama sekarang disejajarkan untuk bekerja lebih baik dengan subtitle" . Lihat jugaplot.title
argumen di?theme
: "rata rata kiri".Seperti yang ditunjukkan oleh @J_F, Anda dapat menambahkan
theme(plot.title = element_text(hjust = 0.5))
ke tengah judul.sumber
... theme(plot.title = element_text(hjust = 'center'))
saya mendapatkan pesan peringatan kesalahan:1: In unit(rep(xp, n), "npc") : NAs introduced by coercionv2: In validDetails.text(x) : NAs introduced by coercion
dan tidak ada judul. Apakah ini bug?hjust
harus berupa angka.theme(plot.title = element_text(hjust = 0.5))
, tetapi tidak berhasil, ini aneh.Seperti yang dinyatakan dalam jawaban oleh Henrik , judul dibariskan secara default dimulai dengan ggplot 2.2.0. Judul dapat dipusatkan dengan menambahkan ini ke plot:
Namun, jika Anda membuat banyak plot, mungkin membosankan untuk menambahkan baris ini di mana-mana. Seseorang kemudian dapat juga mengubah perilaku default ggplot
Setelah Anda menjalankan baris ini, semua plot yang dibuat setelahnya akan menggunakan pengaturan tema
plot.title = element_text(hjust = 0.5)
sebagai default:Untuk kembali ke pengaturan default ggplot2 asli, Anda dapat memulai kembali sesi R atau memilih tema default
sumber
The
ggeasy
paket memiliki fungsi yang disebuteasy_center_title()
untuk melakukan hal itu. Saya merasa jauh lebih menarik daripadatheme(plot.title = element_text(hjust = 0.5))
dan itu jauh lebih mudah untuk diingat.Perhatikan bahwa saat menulis jawaban ini, Anda harus menginstal versi pengembangan
ggeasy
dari GitHub untuk digunakaneasy_center_title()
. Anda dapat melakukannya dengan berlariremotes::install_github("jonocarroll/ggeasy")
.sumber