Considera la primera columna del conjunto de datos EuStockMarkets
, que contiene los precios de cierre de índices bursátiles europeos.
dat <- as.data.frame(EuStockMarkets[, 1:2])
Si quieres crear un gráfico de área de una de las variables puedes hacer uso de la función polygon
o la función areaplot
de la librería del mismo nombre. Ten en cuenta que usando areaplot
el eje Y empezará en 0.
dat <- as.data.frame(EuStockMarkets[, 1:2])
# Primera columna
y <- dat[, 1]
# Gráfico de área
plot(y, type = "l")
polygon(c(1, seq(y), length(y)), c(0, y, 0),
col = rgb(0.53, 0.79, 0.88, alpha = 0.5))
# Casi equivalente a:
# install.packages("areaplot")
library(areaplot)
areaplot(y, col = rgb(0.53, 0.79, 0.88, alpha = 0.5))
Si quieres crear un gráfico de área con varias variables puedes hacer uso de la función polygon
como se muestra en el bloque de código. Ten en cuenta que si los valores de una variable son siempre mayores que la otra deberías dibujarla primero. Además, si las variables se solapan deberías usar un color con transparencia.
dat <- as.data.frame(EuStockMarkets[, 1:2])
# Segunda variable (porque toma valores mayores)
y1 <- dat$SMI
# Gráfico
plot(y1, type = "l", ylim = c(0, max(dat)))
polygon(c(1, seq(y1), length(y1)), c(0, y1, 0),
col = "#E0F2F1")
# Primera variable
y2 <- dat$DAX
# Agregamos la línea
lines(y2, type = "l")
polygon(c(1, seq(y2), length(y2)), c(0, y2, 0),
col = "#4DB6AC")
Si quieres dibujar más de dos o tres variables considera crear un gráfico de área apilado en su lugar.
También te puede interesar