Ответ 1
Вот несколько вариантов изменения размера текста/метки
library(ggplot2)
# Example data using mtcars
a <- aggregate(mpg ~ vs + am , mtcars, function(i) round(mean(i)))
p <- ggplot(mtcars, aes(factor(vs), y=mpg, fill=factor(am))) +
geom_bar(stat="identity",position="dodge") +
geom_text(data = a, aes(label = mpg),
position = position_dodge(width=0.9), size=20)
size
в geom_text
изменяет размер меток geom_text
.
p <- p + theme(axis.text = element_text(size = 15)) # changes axis labels
p <- p + theme(axis.title = element_text(size = 25)) # change axis titles
p <- p + theme(text = element_text(size = 10)) # this will change all text size
# (except geom_text)
Для этого И почему размер 10 в geom_text() отличается от размера в теме (text = element_text())?
Да, они разные. Я проверил быструю ручную проверку, и они выглядят в соотношении ~ (14/5) для размеров geom_text
до размеров theme
.
Таким образом, ужасное исправление для равномерных размеров заключается в масштабировании по этому соотношению
geom.text.size = 7
theme.size = (14/5) * geom.text.size
ggplot(mtcars, aes(factor(vs), y=mpg, fill=factor(am))) +
geom_bar(stat="identity",position="dodge") +
geom_text(data = a, aes(label = mpg),
position = position_dodge(width=0.9), size=geom.text.size) +
theme(axis.text = element_text(size = theme.size, colour="black"))
Это, конечно, не объясняет почему? и это лаваш (и я предполагаю, что есть более разумный способ сделать это)