Considera el siguiente conjunto de datos que contiene dos variables que representan los valores y su evento, fecha o grupo correspondiente.
# install.packages("ggalluvial")
library(ggalluvial)
grupo <- LETTERS[1:6]
valor <- c(2000, 4000, 2000,
-1500, -1000, -2500)
df <- data.frame(x = grupo, y = valor)
Para crear un gráfico de cascada en ggplot2 usando el paquete waterfalls
puedes pasar tu dataframe con grupos y valores o pasar los vectores a los argumentos values
y labels
de la función waterfall
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df)
# Equivalente a:
waterfall(values = valor, labels = grupo)
Calcular el total
Estableciendo el argumento calc_total
como TRUE
se calculará el restulado final y se agregará un rectángulo al gráfico que contiene el resultado. Puedes cambiar el nombre del rectángulo en el eje con el argumento total_axis_text
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, calc_total = TRUE)
Grosor de los rectángulos
Ten en cuenta que el argumento rect_width
controla el ancho de los rectángulos. El valor por defecto es 0.7.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, rect_width = 0.4)
Eliminar las líneas entre los rectángulos
Entre sucesivos rectángulos se muestran líneas punteadas uniendo dichos rectángulos. Puedes eliminarlas estableciendo draw_lines
como FALSE
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, draw_lines = FALSE)
Tipos de líneas
Si quieres manter las líneas entre los rectángulos pero prefieres cambiar el tipo de línea puedes hacerlo con el argumento linetype
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, linetype = 1)
Colorear los rectángulos con colores personalizados
Por defecto fill_by_sign = TRUE
, de modo que los valores positivos y negativos se colorearán cada uno con el mismo color. Si estableces el argumento como FALSE
puedes usar los colores que quieras en cada rectángulo pasándolos al argumento fill_colours
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df,
fill_by_sign = FALSE,
fill_colours = 2:7)
Colores del rectángulo del total
Si agregaste el total con calc_total = TRUE
puedes cambiar el color del rectángulo con total_rect_color
y el color de su texto con total_rect_text_color
.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, calc_total = TRUE,
total_rect_color = "orange",
total_rect_text_color = "white")
Color del borde
Ten en cuenta que también puedes cambiar el color del borde de los rectángulos. Si los estableces como NA
no se dibujarán los bordes, tal y como se muestra en el ejemplo siguiente.
# install.packages("waterfalls")
library(waterfalls)
waterfall(df, rect_border = NA)
Cambiar el tema
Por último, como la librería se basa en ggplot2 puedes agregar más capas a la función, como un título, un subtítulo o cambiar el tema, como se muestra a continuación, además de otras personalizaciones.
# install.packages("waterfalls")
library(waterfalls)
# install.packages("ggplot2)
library(ggplot2)
waterfall(df) +
theme_minimal()
También te puede interesar