Gráfico de densidades apiladas con el paquete ggridges de R
Gráfico de densidades apiladas con el paquete ggridges de R
¡El diagrama de cajas cumple cincuenta años! Cinco números que han acompañado a varias generaciones. Pero ¿se aventura por las crestas (ridges) de la vida?
Cresta del cerro, Daniel Torres García
Densidades para cada nivel
El paquete ggridges representa densidades apiladas según los niveles de una variable. Visualmente muy informativos, se programan en el entorno ggplot.
library(ggplot2) library(ggridges) ggplot(lincoln_weather, aes(x = `Mean Temperature [F]`, y = Month, fill = stat(x))) + geom_density_ridges_gradient(scale = 3, rel_min_height = 0.01, gradient_lwd = 1.) + scale_x_continuous(expand = c(0, 0)) + scale_y_discrete(expand = expand_scale(mult = c(0.01, 0.25))) + scale_fill_viridis_c(name = "Temp. [F]", option = "C") + labs( title = 'Temperatures in Lincoln NE', subtitle = 'Mean temperatures (Fahrenheit) by month for 2016' ) + theme_ridges(font_size = 13, grid = TRUE) + theme(axis.title.y = element_blank())
Reordenación de los niveles
Cuando los niveles no presentan una ordenación prefijada conviene ordenarlos según su mediana.
data <- iris data$Species <- reorder(data$Species, data$Petal.Length,median) ggplot(data, aes(x = Petal.Length, y = Species, fill = stat(x))) + geom_density_ridges_gradient(scale = 3, rel_min_height = 0.01, gradient_lwd = 1.) + scale_x_continuous(expand = c(0, 0)) + scale_y_discrete(expand = expand_scale(mult = c(0.01, 0.25))) + scale_fill_viridis_c(name = "Length of Petal", option = "C") + labs( title = 'Iris flowers', subtitle = 'Length of petal by specie' ) + theme_ridges(font_size = 13, grid = TRUE) + theme(axis.title.y = element_blank()) + theme(legend.position = "none")