调整geom_text中的大小以实现geom_bar标准定位

时间:2019-02-14 18:49:54

标签: r ggplot2

我能够按照position = dodge格式有效地更改条形图标签的大小。但是,当尝试简单地使用stat = identity做同样的事情时,我在一侧收到一个说明大小的图例,并且标签本身的大小似乎没有变化。

关于SO的大多数问题与此相反,仅使用位置躲避时难以更改大小。我在搜索中没有发现与此类似的问题。

library(ggplot2)
names <- c("Yes", "No")
values <- c(100, 80)
prac <- data.frame(names, values)

ggplot(data = prac, aes(x = names, y = values, label = values)) +
  geom_bar(stat = "identity") + 
  geom_text(aes(size = 50))  

enter image description here

似乎尺寸没有改变。

ggplot(data = prac, aes(x = names, y = values, label = values)) +
  geom_bar(stat = "identity") + 
  geom_text(aes(size = 5))  

enter image description here

但是,使用position = dodge,该问题不存在。大小会按预期更改。

names2 <- c("Yes", "No", "Yes", "No")
values2 <- c(100, 80, 110, 70)
area <- c("Large", "Small", "Small", "Large")
prac2 <- data.frame(names2, values2, area)

ggplot(data = prac2, aes(x = names2, y = values2, label = values2, fill = area)) +
  geom_bar(stat = "identity", position = "dodge") +
  geom_text(position = position_dodge(width = 1), size = 5)

enter image description here

最后,应该注意的是,无论是否在ggplot行或geom_text行中指定了标签,都会产生相同的输出。

ggplot(data = prac, aes(x = names, y = values)) +
  geom_bar(stat = "identity") + 
  geom_text(aes(label = values, size = 5))

enter image description here

0 个答案:

没有答案