我有一个非常简单的问题,我正在努力寻找答案。我希望这里有人可以帮助我。
示例数据框如下所示:
a <- c(1:10)
b <- c(10:1)
df <- data.frame(a,b)
library(ggplot2)
g = ggplot(data=df) + geom_point(aes(x=a, y=b)) +
xlab("x axis")
g
我只是想了解如何更改轴标题和轴标签的文字大小。
答案 0 :(得分:257)
您可以使用函数axis.text=
中的参数axis.title=
和theme()
更改轴文本和标签大小。例如,如果您需要更改x轴标题大小,请使用axis.title.x=
。
g+theme(axis.text=element_text(size=12),
axis.title=element_text(size=14,face="bold"))
在ggplot2 page中设置不同的theme()
参数有很好的例子。
答案 1 :(得分:28)
答案 2 :(得分:2)
如果要创建许多图形,您可能会厌倦为每个图形键入控制标题和文本大小的代码行。我通常要做的是创建一个定义所需主题特征的对象(“主题”“ gg”类)。您可以在代码的开头执行此操作。
My_Theme = theme(
axis.title.x = element_text(size = 16),
axis.text.x = element_text(size = 14),
axis.title.y = element_text(size = 16))
接下来,您要做的就是将My_Theme添加到图形中。
g + My_Theme
如果您还有另一个图形g1,只需编写:
g1 + My_Theme
等等。
答案 3 :(得分:0)
要在一处并同时更改(几乎)所有文本元素的大小,rel()
非常有效:
g+theme(text = element_text(size=rel(3.5))
您可能想稍微调整一下数字,以获得最佳结果。它以相同的比例设置水平和垂直轴标签和标题以及其他文本元素。多面网格的标题是一个例外,必须将其手动设置为相同的值,例如,如果在图形中同时使用了x和y两种面:
theme(text = element_text(size=rel(3.5)),
strip.text.x = element_text(size=rel(3.5)),
strip.text.y = element_text(size=rel(3.5)))