Nilai hjustdan vjusthanya didefinisikan antara 0 dan 1:
- 0 berarti dibenarkan kiri
- 1 berarti benar
Sumber: ggplot2, Hadley Wickham, halaman 196
(Ya, saya tahu bahwa dalam kebanyakan kasus Anda dapat menggunakannya di luar kisaran ini, tetapi jangan berharap itu berperilaku dengan cara tertentu. Ini di luar spesifikasi.)
hjustmengontrol justifikasi horisontal dan vjustmengontrol justifikasi vertikal.
Contoh harus menjelaskan ini:
td <- expand.grid(
hjust=c(0, 0.5, 1),
vjust=c(0, 0.5, 1),
angle=c(0, 45, 90),
text="text"
)
ggplot(td, aes(x=hjust, y=vjust)) +
geom_point() +
geom_text(aes(label=text, angle=angle, hjust=hjust, vjust=vjust)) +
facet_grid(~angle) +
scale_x_continuous(breaks=c(0, 0.5, 1), expand=c(0, 0.2)) +
scale_y_continuous(breaks=c(0, 0.5, 1), expand=c(0, 0.2))

Untuk memahami apa yang terjadi ketika Anda mengubah hjustteks sumbu, Anda perlu memahami bahwa perataan horisontal untuk teks sumbu didefinisikan dalam kaitannya bukan dengan sumbu x, tetapi dengan keseluruhan plot (di mana ini termasuk teks sumbu y). (Menurut saya, ini disayangkan. Akan jauh lebih bermanfaat untuk memiliki keberpihakan relatif terhadap sumbu.)
DF <- data.frame(x=LETTERS[1:3],y=1:3)
p <- ggplot(DF, aes(x,y)) + geom_point() +
ylab("Very long label for y") +
theme(axis.title.y=element_text(angle=0))
p1 <- p + theme(axis.title.x=element_text(hjust=0)) + xlab("X-axis at hjust=0")
p2 <- p + theme(axis.title.x=element_text(hjust=0.5)) + xlab("X-axis at hjust=0.5")
p3 <- p + theme(axis.title.x=element_text(hjust=1)) + xlab("X-axis at hjust=1")
library(ggExtra)
align.plots(p1, p2, p3)

Untuk menjelajahi apa yang terjadi dengan vjustpenghilangan label sumbu:
DF <- data.frame(x=c("a\na","b","cdefghijk","l"),y=1:4)
p <- ggplot(DF, aes(x,y)) + geom_point()
p1 <- p + theme(axis.text.x=element_text(vjust=0, colour="red")) +
xlab("X-axis labels aligned with vjust=0")
p2 <- p + theme(axis.text.x=element_text(vjust=0.5, colour="red")) +
xlab("X-axis labels aligned with vjust=0.5")
p3 <- p + theme(axis.text.x=element_text(vjust=1, colour="red")) +
xlab("X-axis labels aligned with vjust=1")
library(ggExtra)
align.plots(p1, p2, p3)
