stat_bin(mapping = NULL, data = NULL, geom = "bar", position = "stack", width = 0.9, drop = FALSE, right = FALSE, binwidth = NULL, origin = NULL, breaks = NULL, ...)
TRUE, right-closed, left-open, if
FALSE,aes or aes_string. Only
needs to be set at the layer level if you are overriding
the plot defaults.layer. This can include aesthetics whose
values you want to set, not map. See layer
for more details.New data frame with additional columns: countnumber of points in bin densitydensity of points in bin, scaled to integrate to 1 ncountcount, scaled to maximum of 1 ndensitydensity, scaled to maximum of 1
Missing values are currently silently dropped.
stat_bin understands the following aesthetics (required aesthetics are in bold):
x
y
simple <- data.frame(x = rep(1:10, each = 2)) base <- ggplot(simple, aes(x)) # By default, right = TRUE, and intervals are of the form (a, b] base + stat_bin(binwidth = 1, drop = FALSE, right = TRUE, col = "black")
# If right = FALSE intervals are of the form [a, b) base + stat_bin(binwidth = 1, drop = FALSE, right = FALSE, col = "black")
m <- ggplot(movies, aes(x=rating)) m + stat_bin()stat_bin: binwidth defaulted to range/30. Use 'binwidth = x' to adjust this.
m + stat_bin(binwidth=0.1)Warning message: position_stack requires constant width: output may be incorrect
m + stat_bin(breaks=seq(4,6, by=0.1))
# See geom_histogram for more histogram examples # To create a unit area histogram, use aes(y = ..density..) (linehist <- m + stat_bin(aes(y = ..density..), binwidth=0.1, geom="line", position="identity"))
linehist + stat_density(colour="blue", fill=NA)
# Also works with categorical variables ggplot(movies, aes(x=mpaa)) + stat_bin()
qplot(mpaa, data=movies, stat="bin")