r-如何将频率百分比添加到ggplot2中的有序条形图中



我需要构建一个水平条形图,它是有序的,上面有频率计数(我可以得到)和频率百分比。到目前为止,我的代码看起来是这样的。我无法订购图表或添加百分比(除了计数)。非常感谢您的帮助。很抱歉,我是新来的,没有足够的声誉来发布示例图片。

event <- c("a","a","a","a","a","a","b","b","b","b","c","c","c","c","c")
dat <- data.frame(event)

ggplot(dat, aes(x=event)) + geom_bar(fill = "orange", width = 0.5) + coord_flip() +
  geom_text(stat='bin',aes(label=..count..,vjust=.75, hjust = 0))

感谢的帮助

可以通过预先更改因子来更改顺序:

dat$event <- factor(dat$event, levels = names(sort(table(dat$event)))). 

添加百分比的效果就像你对绝对值所做的那样:

geom_text(stat='bin', 
      aes(label=paste0(..count.., 
                       ", ", 
                       round(..count../sum(..count..)*100, 1), 
                       "%")))

最新更新