在ggplot2中心绘图标题

你好这个简单的代码(以及我今天早上的所有脚本)已经开始给我一个ggplot2的偏离中心的标题

Ubuntu version: 16.04

R studio version: Version 0.99.896

R version: 3.3.2

GGPLOT2 version: 2.2.0

今天早上我刚刚安装了上述内容,试图解决这个问题....

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")

在这里输入图像描述


ggplot 2.2.0发布消息:“主要情节标题现在左对齐,以更好地与副标题更好地工作”。 另请参阅?themeplot.title参数:“默认情况下为左对齐”。

正如@J_F指出的那样,您可以添加theme(plot.title = element_text(hjust = 0.5))以标题居中。

ggplot() +
  ggtitle("Default in 2.2.0 is left-aligned")

ggplot() +
  ggtitle("Use theme(plot.title = element_text(hjust = 0.5)) to center") +
  theme(plot.title = element_text(hjust = 0.5))


正如Henrik的答案中所述,标题默认情况下是左对齐,从ggplot 2.2.0开始。 标题可以通过添加到图中来进行居中:

theme(plot.title = element_text(hjust = 0.5))

但是,如果您创建了很多地块,则无处不在添加此行可能会很繁琐。 然后,人们可以改变ggplot的默认行为

theme_update(plot.title = element_text(hjust = 0.5))

一旦你运行了这一行,之后创建的所有图将使用主题设置plot.title = element_text(hjust = 0.5)作为它们的默认值:

theme_update(plot.title = element_text(hjust = 0.5))
ggplot() + ggtitle("Default is now set to centered")

要回到原来的ggplot2默认设置,您可以重新启动R会话或使用选择默认主题

theme_set(theme_gray())
链接地址: http://www.djcxy.com/p/30851.html

上一篇: Center Plot title in ggplot2

下一篇: Using ggplot to plot a map from a matrix