9

编辑:问题是由于我theme(title = element_text())在需要更改时错误地尝试更改theme(plot.title(element_text())。如果我更仔细地检查theme()文档,我会注意到这一点。

原帖:

更改标题垂直对齐也会改变 x 和 y 轴标签的位置。这是一个错误吗?还是我误解了theme() 的功能?我正在运行 ggplot2 版本 0.9.3.1

最小的可重现示例。

require(ggplot2)
set.seed(12345)
x <- rnorm(100,10,0.5)
y <- x * 3 + rnorm(100)
df <- data.frame(y,y)

对于我的口味,默认标题太接近图表了....

ggplot(df,aes(x,y)) + 
geom_point() + 
labs(title="My Nice Graph")

在此处输入图像描述

当我尝试移动标题时,轴标签也会移动,并且在图表上难以辨认。

ggplot(df,aes(x,y)) + 
geom_point() + 
labs(title="My Nice Graph") + 
theme(title = element_text(vjust=2))

在此处输入图像描述

4

2 回答 2

27

plot.title不想title

labs(title="My Nice Graph") + theme(plot.title = element_text(vjust=2))

替代快速修复是添加换行符:

  labs(title="My Nice Graph\n")
于 2013-10-23T20:13:14.833 回答
7

vjust对我不起作用(我也认为值应该在 [0, 1] 中)。我用

... +
theme(
  plot.title = element_text(margin=margin(b = 10, unit = "pt"))
)
于 2016-01-18T09:26:36.640 回答