Expanding @joran’s comment, the special variables in ggplot with double periods around them (..count..
, ..density..
, etc.) are returned by a stat transformation of the original data set. Those particular ones are returned by stat_bin
which is implicitly called by geom_histogram
(note in the documentation that the default value of the stat
argument is "bin"
). Your second example calls a different stat function which does not create a variable named ..count..
. You can get the same graph with
p + geom_bar(stat="bin")
In newer versions of ggplot2
, one can also use the stat
function instead of the enclosing ..
, so aes(y = ..count..)
becomes aes(y = stat(count))
.