ggmosaic was designed to create visualizations of categorical data and is capable of producing bar charts, stacked bar charts, mosaic plots, and double decker plots.
You can install ggmosaic from github with:
# install.packages("devtools")
devtools::install_github("haleyjeppson/ggmosaic")
library(ggmosaic)
#> Loading required package: ggplot2
ggplot(data = fly) +
geom_mosaic(aes(x = product(RudeToRecline), fill=DoYouRecline))
Aesthetics that can be set:
- weight : select a weighting variable
- x : select variables to add to formula
- declared as x = product(x1, x2, …)
- fill : select a variable to be filled
- if the variable is not also called in x, it will be added to the formula in the first position
- conds : select a variable to condition on
- declared as conds = product(cond1, cond2, …)
These values are then sent through productplots
functions to create
the formula for the desired distribution
Formula: weight ~ fill + x | conds
Example of how the formula is built
- weight = 1
- x = product(Y, X)
- fill = W
- conds = product(Z)
These aesthetics set up the formula for the distribution: 1 ~ W + X + Y | Z
Because a mosaic plot is constructed hierarchically through alternating spines, the ordering of the variables is very important.