Muchas personas necesitan dibujar varias series temporales en el mismo gráfico, pero no siempre saben cómo hacerlo. En este artículo, vamos a mostrar dos ejemplos de cómo dibujar varias series temporales en el mismo gráfico en R.
Ejemplo 1: dibujar varias series temporales en el mismo gráfico en R
En el primer ejemplo, vamos a utilizar el paquete ggplot2 para dibujar varias series temporales en el mismo gráfico. Primero, cargamos el paquete ggplot2:
library(ggplot2)
Luego, creamos un objeto de tipo tibble con tres columnas. Cada columna contiene una serie temporal. En este ejemplo, las tres series temporales son el número de casos de COVID-19 en Italia, España y Alemania:
df <- tibble(
Italia = c(15874, 17649,21157,24737,27980,31506,35713,41035,47021,52788,58138,63927,69176),
España = c(12038,13910,16568,18801,20973,23112,25996,28714,31177,33402,35191,37323,39885),
Alemania = c(4506,4927,5890,6813,7674,8158,8782,9859,10999,12462,13823,15238,16269)
)
A continuación, dibujamos las tres series temporales en el mismo gráfico. Para ello, utilizamos la función geom_line():
ggplot(df, aes(x = 1:13, y = Italia)) +
geom_line(aes(x = 1:13, y = España), color = "red") +
geom_line(aes(x = 1:13, y = Alemania), color = "blue")
En el gráfico, podemos ver que el número de casos de COVID-19 en Italia es mucho mayor que el número de casos en España y Alemania. También podemos ver que el número de casos en España y Alemania está aumentando a un ritmo similar.
Ejemplo 2: dibujar varias series temporales en el mismo gráfico en R
En el segundo ejemplo, vamos a utilizar la función plot() para dibujar varias series temporales en el mismo gráfico. Primero, cargamos el paquete ggplot2:
library(ggplot2)
Luego, creamos un objeto de tipo tibble con tres columnas. Cada columna contiene una serie temporal. En este ejemplo, las tres series temporales son el número de casos de COVID-19 en Italia, España y Alemania:
df <- tibble(
Italia = c(15874, 17649,21157,24737,27980,31506,35713,41035,47021,52788,58138,63927,69176),
España = c(12038,13910,16568,18801,20973,23112,25996,28714,31177,33402,35191,37323,39885),
Alemania = c(4506,4927,5890,6813,7674,8158,8782,9859,10999,12462,13823,15238,16269)
)
A continuación, dibujamos las tres series temporales en el mismo gráfico. Para ello, utilizamos la función plot():
plot(df$Italia, type = "l", col = "red", xlab = "Fecha", ylab = "Número de casos")
lines(df$España, type = "l", col = "blue")
lines(df$Alemania
Existen varios paquetes en R que permiten dibujar varias series temporales en el mismo gráfico. Algunos de ellos son "ggplot2", "lattice" y "plotly". A continuación se muestran dos ejemplos de cómo dibujar varias series temporales en el mismo gráfico usando el paquete "ggplot2".
Ejemplo 1:
library(ggplot2)
df <- data.frame(
time = seq(from = as.Date("2000-01-01"), to = as.Date("2010-01-01"), by = "1 year"),
value1 = c(1,2,3,4,5,6,7,8,9,10),
value2 = c(10,9,8,7,6,5,4,3,2,1)
)
ggplot(df, aes(x = time, y = value1)) +
geom_line() +
geom_line(aes(y = value2))
Ejemplo 2:
library(ggplot2)
df <- data.frame(
time = seq(from = as.Date("2000-01-01"), to = as.Date("2010-01-01"), by = "1 year"),
value1 = c(1,2,3,4,5,6,7,8,9,10),
value2 = c(10,9,8,7,6,5,4,3,2,1)
)
ggplot(df, aes(x = time)) +
geom_line(aes(y = value1)) +
geom_line(aes(y = value2))
https://www.youtube.com/watch?v=u0cicCBPt2U
Representando varias series temporales en un mismo gráfico en R
Representando varias series temporales en un mismo gráfico en R
R es un lenguaje de programación y un software libre para el análisis de datos. Se trata de una herramienta muy potente para el tratamiento de datos numéricos y la generación de gráficos.
En este tutorial vamos a ver cómo podemos representar varias series temporales en un mismo gráfico usando R. Para ello, vamos a utilizar el paquete ggplot2, que nos permite crear gráficos de alta calidad de forma muy sencilla.
Lo primero que necesitamos es un conjunto de datos con las series temporales que queremos representar. En este ejemplo, vamos a utilizar los datos del Índice de Precios al Consumo (IPC) de España desde enero de 2007 hasta diciembre de 2016. Los datos los hemos obtenido de la web del Banco de España.
El siguiente paso es cargar los datos en R. Para ello, utilizaremos la función read.csv().
> ipc <- read.csv("ipc.csv", header = TRUE, sep = ";")
Una vez tenemos los datos cargados en R, vamos a representar la evolución del IPC en España desde 2007 hasta 2016. Para ello, utilizaremos la función ggplot() del paquete ggplot2.
> library(ggplot2)
> ggplot(ipc, aes(x = Fecha, y = IPC)) + geom_line()
Como podemos ver, el gráfico es muy sencillo de interpretar. Podemos ver claramente la evolución del IPC en España a lo largo de los últimos 10 años.
Ahora vamos a ver cómo podemos representar varias series temporales en un mismo gráfico. Para ello, en primer lugar, necesitamos obtener más datos. En este ejemplo, vamos a utilizar los datos del Índice de Precios al Consumo (IPC) de Alemania, Francia, Italia y Reino Unido desde enero de 2007 hasta diciembre de 2016. Los datos los hemos obtenido de la web del Banco de España.
Una vez tenemos los datos, vamos a cargarlos en R. Para ello, utilizaremos la función read.csv().
> ipc <- read.csv("ipc.csv", header = TRUE, sep = ";")
Ahora que tenemos los datos cargados en R, vamos a representar la evolución del IPC en España, Alemania, Francia, Italia y Reino Unido desde 2007 hasta 2016. Para ello, utilizaremos la función ggplot() del paquete ggplot2.
> library(ggplot2)
> ggplot(ipc, aes(x = Fecha, y = IPC, color = Pais)) + geom_line()
Como podemos ver, el gráfico es muy sencillo de interpretar. Podemos ver claramente la evolución del IPC en cada uno de los países a lo largo de los últimos 10 años.
¿Cómo podemos cambiar el color de cada serie temporal en el gráfico?
¿Cómo podemos cambiar el color de cada serie temporal en el gráfico?
Hay muchas formas de cambiar el color de una serie temporal en un gráfico. La forma más común es simplemente hacer clic derecho en la serie temporal en el gráfico y seleccionar la opción "Cambiar color". Otra forma es seleccionar la serie temporal en el gráfico, hacer clic derecho y seleccionar "Propiedades de la serie". En la ventana de propiedades, haga clic en el botón "Color" y seleccione el color que desee.
Librerías de R para dibujar varias series temporales en un gráfico
R tiene muchas librerías útiles para trabajar con datos de series temporales. Estas librerías hacen que sea fácil de visualizar y analizar los datos de una serie temporal. Algunas de las librerías más populares para el análisis de series temporales en R son:
- forecast: Esta es una librería popular para el análisis de series temporales. Ofrece una amplia gama de funciones para el análisis de datos de series temporales, incluyendo la estimación de modelos, la predicción y la simulación.
- tseries: Esta es otra librería popular para el análisis de series temporales. Ofrece funciones para el manejo de datos de series temporales, la estimación de modelos y la predicción.
- xts: Esta librería es útil para el manejo y análisis de datos de series temporales. Ofrece funciones para el manejo de datos de series temporales, la estimación de modelos y la predicción.
- zoo: Esta librería es útil para el manejo y análisis de datos de series temporales. Ofrece funciones para el manejo de datos de series temporales, la estimación de modelos y la predicción.
Al final del articulo se puede concluir que, dependiendo del tipo de data y el objetivo del analisis, puede ser útil o no superponer varias series temporales en un mismo gráfico. En general, si las series tienen comportamientos similares o se quiere analizar la relación entre ellas, superponerlas puede ser una buena idea. Sin embargo, si las series tienen comportamientos muy diferentes o se quiere destacar una en particular, es mejor graficarlas en gráficos separados.
Para dibujar varias series temporales en el mismo gráfico en R, podemos usar la función 'para' para crear un loop que dibuje cada serie en un gráfico separado.
Por ejemplo, supongamos que tenemos tres series temporales que queremos graficar:
serie1<-c(1,2,3,4,5,6,7,8,9,10)
serie2<-c(2,4,6,8,10,12,14,16,18,20)
serie3<-c(3,6,9,12,15,18,21,24,27,30)
Podemos usar la siguiente sintaxis para crear un loop que dibuje cada serie en un gráfico separado:
par(mfrow=c(3,1)) #Esto crea una ventana de 3 filas y 1 columna para los gráficos
for(i in 1:3){
plot(eval(parse(text=paste0("serie",i)))) #Evalúa y ejecuta la serie de comandos en un gráfico
}
Alejandro Lugon
Administrator
Alejandro Lugón es un economista y escritor especializado en Python y R, conocido por ser el creador del blog Estadisticool. Nacido en México, Lugón se graduó de la Universidad Autónoma de México con una Licenciatura en Economía. Desde entonces ha trabajado como economista en varias empresas. Lugón también ha escrito varios libros sobre temas relacionados con la economía, el análisis de datos y la programación. Su blog Estadisticool se ha convertido en un lugar de referencia para los programadores de Python y R. Alejandro Lugón es una inspiración para aquellos que buscan aprender programación y análisis de datos. Su trabajo ha ayudado a muchas personas a entender mejor el uso de la tecnología para hacer sus trabajos.
email