stat_binline | R Documentation |
Works like stat_bin
except that the output is a ridgeline describing the histogram rather than
a set of counts.
stat_binline( mapping = NULL, data = NULL, geom = "density_ridges", position = "identity", ..., binwidth = NULL, bins = NULL, center = NULL, boundary = NULL, breaks = NULL, closed = c("right", "left"), pad = TRUE, draw_baseline = TRUE, na.rm = FALSE, show.legend = NA, inherit.aes = TRUE )
mapping |
Set of aesthetic mappings created by |
data |
The data to be displayed in this layer. There are three options: If A A |
geom |
The geom to use for drawing. |
position |
Position adjustment, either as a string, or the result of a call to a position adjustment function. |
... |
Other arguments passed on to |
binwidth |
The width of the bins. Can be specified as a numeric value
or as a function that calculates width from unscaled x. Here, "unscaled x"
refers to the original x values in the data, before application of any
scale transformation. When specifying a function along with a grouping
structure, the function will be called once per group.
The default is to use the number of bins in The bin width of a date variable is the number of days in each time; the bin width of a time variable is the number of seconds. |
bins |
Number of bins. Overridden by |
center, boundary |
bin position specifiers. Only one, |
breaks |
Alternatively, you can supply a numeric vector giving
the bin boundaries. Overrides |
closed |
One of |
pad |
If |
draw_baseline |
If |
na.rm |
If |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
library(ggplot2) ggplot(iris, aes(x = Sepal.Length, y = Species, group = Species, fill = Species)) + geom_density_ridges(stat = "binline", bins = 20, scale = 2.2) + scale_y_discrete(expand = c(0, 0)) + scale_x_continuous(expand = c(0, 0)) + coord_cartesian(clip = "off") + theme_ridges() ggplot(iris, aes(x = Sepal.Length, y = Species, group = Species, fill = Species)) + stat_binline(bins = 20, scale = 2.2, draw_baseline = FALSE) + scale_y_discrete(expand = c(0, 0)) + scale_x_continuous(expand = c(0, 0)) + scale_fill_grey() + coord_cartesian(clip = "off") + theme_ridges() + theme(legend.position = 'none') library(ggplot2movies) ggplot(movies[movies$year>1989,], aes(x = length, y = year, fill = factor(year))) + stat_binline(scale = 1.9, bins = 40) + scale_x_continuous(limits = c(1, 180), expand = c(0, 0)) + scale_y_reverse(expand = c(0, 0)) + scale_fill_viridis_d(begin = 0.3, option = "B") + coord_cartesian(clip = "off") + labs(title = "Movie lengths 1990 - 2005") + theme_ridges() + theme(legend.position = "none") count_data <- data.frame( group = rep(letters[1:5], each = 10), mean = rep(1:5, each = 10) ) count_data$group <- factor(count_data$group, levels = letters[5:1]) count_data$count <- rpois(nrow(count_data), count_data$mean) ggplot(count_data, aes(x = count, y = group, group = group)) + geom_density_ridges2( stat = "binline", aes(fill = group), binwidth = 1, scale = 0.95 ) + geom_text( stat = "bin", aes(y = group + 0.9*stat(count/max(count)), label = ifelse(stat(count) > 0, stat(count), "")), vjust = 1.2, size = 3, color = "white", binwidth = 1 ) + scale_x_continuous(breaks = c(0:12), limits = c(-.5, 13), expand = c(0, 0)) + scale_y_discrete(expand = c(0, 0)) + scale_fill_cyclical(values = c("#0000B0", "#7070D0")) + guides(y = "none") + coord_cartesian(clip = "off") + theme_ridges(grid = FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.