添加频率并将其放在图表中

时间:2017-10-16 18:26:30

标签: r

我试图获取要添加的freqs的变量并将总数放在geom_bar中。现在,HairEyeColor数据的男性和女性频率显示在彼此之上 - 没有添加。这是我的代码:

library(ggplot2)
hec = data.frame(HairEyeColor)
ggplot(hec, aes(Hair, Eye, fill=Freq)) + 
geom_bar(stat='identity',position= 'dodge') +
scale_fill_distiller(palette = "Spectral") +
geom_text(aes(label=Freq),position=position_dodge(width=0.9),vjust=-0.25)

没有添加男女频率。例如,有7名男性和7名女性,红头发和绿眼睛。它只显示了7个或更多可能,它显示了彼此之间的7个。这就是棕色/棕色头发和眼睛看起来很怪异的原因。棕色/棕色有53名男性和66名女性。

我感谢任何帮助或建议。

干杯。

1 个答案:

答案 0 :(得分:1)

它没有添加值,因为您编程按原样使用值。你可以删除行性并总结如下的频率:

library(ggplot2)
hec = data.frame(HairEyeColor)

library(dplyr)

hec %<>%
  group_by(Hair, Eye) %>%
  summarise(Freq=sum(Freq))

ggplot(hec, aes(Hair, Eye, fill=Freq)) + 
  geom_bar(stat='identity',position= 'dodge') +
  scale_fill_distiller(palette = "Spectral") +
  geom_text(aes(label=Freq),position=position_dodge(width=0.9),vjust=-0.25)