का मान hjust
और vjust
केवल 0 और 1 के बीच परिभाषित कर रहे हैं:
- ० का अर्थ है, वाम-औचित्य
- 1 का मतलब सही-सही है
स्रोत: ggplot2, हेडली विकम, पृष्ठ 196
(हां, मुझे पता है कि ज्यादातर मामलों में आप इसे इस सीमा से परे उपयोग कर सकते हैं, लेकिन किसी भी विशिष्ट तरीके से व्यवहार करने की अपेक्षा नहीं करते। यह कल्पना के बाहर है।)
hjust
क्षैतिज औचित्य को vjust
नियंत्रित करता है और ऊर्ध्वाधर औचित्य को नियंत्रित करता है।
एक उदाहरण यह स्पष्ट करना चाहिए:
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))
यह समझने के लिए कि जब आप hjust
अक्ष पाठ में परिवर्तन करते हैं , तो आपको यह समझने की आवश्यकता है कि अक्ष पाठ के लिए क्षैतिज संरेखण एक्स-अक्ष के संबंध में नहीं, बल्कि पूरे भूखंड (जहां इसमें y- अक्ष पाठ शामिल है) के संबंध में परिभाषित किया गया है। (यह, मेरे विचार में, दुर्भाग्यपूर्ण है। यह धुरी के सापेक्ष संरेखण के लिए बहुत अधिक उपयोगी होगा।)
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)
vjust
अक्ष लेबल के परिवर्तन के साथ क्या होता है यह जानने के लिए :
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)