我在ggplot2中使用theme()时遇到问题。
这是情节:
ggplot(data=graph.data, aes(Tree, Proportion))
+ geom_bar(stat="identity", fill="black")
+ geom_errorbar(data=graph.data, mapping=aes(x=Tree, ymin=Proportion-SE, ymax=Proportion+SE), width=0.255)
+ labs(title="Corrected mean LdNPV mortality", x="Tree line", y="Percent mortality")
+ geom_text(aes(x=Tree, y=Proportion+SE+0.05, label=Letters))
+ theme(text=element_text(color="blue", size=12))
将颜色设置为蓝色适用于绘图标题和轴标题,但不适用于轴文本。此外,绘图标题的大小仍然大于轴标题的大小,该大小比轴文本大。将其增加到size = 20会增加绘图标题,轴标题和轴文本,但同样不会增加统一尺寸。有什么想法正在发生什么?
可重复的例子:
cities <- c("New York", "Tokyo", "London")
number <- c(20, 50, 35)
letter <- c("a", "b", "ab")
dummy.data <- data.frame(cities, number, letter)
ggplot(data=dummy.data, aes(cities, number)) +
geom_bar(stat="identity", fill="black") +
labs(title="Plot title", x="X axis title", y="Y axis title") +
geom_text(aes(x=cities, y=number+5, label=letter)) +
theme(text=element_text(color="blue", size=12))
答案 0 :(得分:1)
你可以从主题中单独指定所有这些,不知道它为什么不从主题标题继承颜色,也许你可以将它作为一个bug提交给Hadley?
我更喜欢单独设置事物的大小以及相对于基本绘图大小,例如,轴文本和标题将是常规文本大小的两倍。您可以选择其他乘数。您还可以查看?grid::unit
。
library(ggplot2)
cities <- c("New York", "Tokyo", "London")
number <- c(20, 50, 35)
letter <- c("a", "b", "ab")
dummy.data <- data.frame(cities, number, letter)
ggplot(data=dummy.data, aes(cities, number)) +
geom_bar(stat="identity", fill="black") +
labs(title="Plot title", x="X axis title", y="Y axis title") +
geom_text(aes(x=cities, y=number+5, label=letter)) +
theme(axis.text = element_text(colour = "blue", size = rel(2)),
title = element_text(color = "red", size = rel(2)))