37
votes

On this page, they give the following example

library(ggplot2)
library(reshape2)
ggplot(data=tips, aes(x=day)) + geom_bar(stat="bin")

Instead of a count I'd like to have a frequency in y-axis. How can I achieve this?

2

2 Answers

48
votes

Here's the solution which can be found in related question:

pp <- ggplot(data=tips, aes(x=day)) + 
      geom_bar(aes(y = (..count..)/sum(..count..)))

If you would like to label frequencies as percentage, add this (see here):

library(scales)
pp + scale_y_continuous(labels = percent)
20
votes

now ..prop.. is available

ggplot(data=tips, aes(x=day)) + 
  geom_bar(aes(y = ..prop.., group = 1))