For some reason, I can't seem to be able to add correct proportion labels to a ggplot by using stat_count. The code below returns labels that display 100% for all categories, even though I'm using ..prop... Should I use something else instead of stat_count?
library(tidyverse)
diamonds %>%
ggplot(aes(color, fill=cut)) +
geom_bar(position = 'fill') +
stat_count(aes(label= scales::percent(..prop..)),
geom = 'text', position = position_fill(vjust = 0.5))
I know this can also be accomplished by calculating the percentage before feeding the data to ggplot (like below) but I have quite a bit of code which is using geom_bar and I would need to change all of it if I were to do it this way.
diamonds %>%
count(color, cut) %>%
group_by(color) %>%
mutate(pct=n/sum(n)) %>%
ggplot(aes(color, pct, fill=cut)) +
geom_col(position = 'fill') +
geom_text(aes(label=scales::percent(pct)), position = position_fill(vjust=0.5))

ggplot2version but I still have the same issue