Librería

areaplot

Autor principal

Arni Magnusson

Datos de muestra

Considera el conjunto de datos longley, que contiene datos macroeconómicos de varios años.

# Conjunto de datos
df <- longley

# Variable eje X
x <- df$Year

# Variables a ser apiladas
y <- df[, c(1, 2, 3, 4, 5, 7)]

La función areaplot

La manera más sencilla de crear un gráfico de áreas apiladas en R base es utilizar la librería areaplot, que contiene una función del mismo nombre para tal propósito. Ten en cuenta que también puedes crear gráficos de áreas 100% apiladas.

Puedes pasar dos variables numéricas a la función o especificar una fórmula para crear el gráfico de áreas. Ten en cuenta que los colores por defecto son una escala de grises.

# install.packages("areaplot")
library(areaplot)

# Gráfico de áreas apiladas
areaplot(x, y,
         main = "Gráfico de áreas apiladas",
         xlab = "Año")

# Equivalente a:
areaplot(.~Year, data = df,
         main = "Gráfico de áreas apiladas",
         xlab = "Año")

Gráfico de áreas apiladas en R con areaplot

Personalización del color

Colores del gráfico de áreas apiladas en R

El argumento cols se puede utilizar para personalizar la paleta de colores usada para colorear cada área. En el siguiente ejemplo estamos usando la conocida paleta viridis con un nivel de transparencia del 0.8.

# install.packages("areaplot")
library(areaplot)

# Colores
cols <- hcl.colors(6, palette = "viridis", alpha = 0.8)

# Áreas apiladas con paleta de colores personalizada
areaplot(x, y,
         col = cols)

Color del borde áreas apiladas

El estilo de las líneas se puede personalizar haciendo uso de argumentos adicionales. Por ejemplo, puedes personalizar el color del borde con border y cambiar el ancho y tipo de línea con lwd y lty, respectivamente.

# install.packages("areaplot")
library(areaplot)

# Colores
cols <- hcl.colors(6, palette = "ag_Sunset")

# Personalización de los bordes
areaplot(x, y, col = cols,
         border = "white",
         lwd = 1,
         lty = 1)

Añadir una leyenda

Estableciendo legend = TRUE como argumento de la función areaplot se creará una leyenda de manera automática. Puedes sobrescribir los argumentos por defecto de la leyenda con args.legend. Consulta el articulo sobre leyendas para obtener detalles adicionales.

# install.packages("areaplot")
library(areaplot)

# Colores
cols <- hcl.colors(6, palette = "PinkYl")

# areaplot con leyenda
areaplot(x, y, col = cols,
         legend = TRUE,
         args.legend = list(x = "topleft", cex = 0.65))

Gráfico de áreas apiladas con leyenda en R

También te puede interesar