当角度在 45 到 90 之间时,如何更正 x 轴文本的位置?
Posted
技术标签:
【中文标题】当角度在 45 到 90 之间时,如何更正 x 轴文本的位置?【英文标题】:how to correct x axis text placement when the angle is between 45 and 90? 【发布时间】:2019-11-09 18:53:45 【问题描述】:我很难理解 ggplot 的 axis.text.x 的交互:angle
、hjust
和 vjust
。当角度在 0 到 45 之间时,我读过的所有内容都有效,但不适用于角度 > 45 和
下面是一个最小的可重现示例:
library(ggplot2)
p <- ggplot(mtcars, aes(1000 * mpg, hp)) +
geom_point()
angle = 90
的第一个图看起来符合预期,
p + theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5))
但是,与上图相比,当角度仅减少 1 度时(从 angle = 90
到 angle = 89
),轴标签会向下移动。
p + theme(axis.text.x = element_text(angle = 89, hjust = 1, vjust = 0.5))
任何见解都值得赞赏。
【问题讨论】:
您能添加当前和预期输出的图片吗? 试试看这个问题:***.com/questions/1330989/… 如果只使用vjust = 0.5
,事情看起来还不错,但我无法弄清楚hjust
在您的第二种情况下所做的逻辑。
【参考方案1】:
尝试同时指定vjust = 0.5
和hjust = 0.5
即可避免此问题。
ggplot(mtcars, aes(x = 1000*mpg, y = hp)) +
geom_point() +
theme(
axis.text.x = element_text(angle = 75, vjust = .5, hjust = .5)
)
【讨论】:
以上是关于当角度在 45 到 90 之间时,如何更正 x 轴文本的位置?的主要内容,如果未能解决你的问题,请参考以下文章