#Establecer folder de trabajo 
setwd("~/proba")
#Analizar series de tiempo acumuladas de datos de COVID-19 en Mexico 
#utilizando el repositorio de JHU

#Bibliotecas
library(readr)
library(tidyverse)
## -- Attaching packages ----------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.1     v dplyr   1.0.0
## v tibble  3.0.1     v stringr 1.4.0
## v tidyr   1.1.0     v forcats 0.5.0
## v purrr   0.3.4
## -- Conflicts -------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(plotly)
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout
library(gganimate)
library(gifski)

url_conf <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv"
url_decesos <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv"
url_recuperados <- "https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_recovered_global.csv"

#Leer los archivos CSV de las URL
datos_conf <- read.csv(url_conf)
datos_decesos <- read.csv(url_decesos)
datos_recuperados <- read.csv(url_recuperados)

#Filtrar datos para China
conf_chi <- t(datos_conf [datos_conf$Country.Region=="China",])
dec_chi <- t(datos_decesos [datos_decesos$Country.Region=="China",])
rec_chi <- t(datos_recuperados [datos_recuperados$Country.Region=="China",])

#Primer figura acumulada
#Aqui podemos observar los primeros datos confirmados de China
plot(conf_chi)
## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introduced by coercion

## Warning in xy.coords(x, y, xlabel, ylabel, log): NAs introduced by coercion

#Para crear un vector de fecha con formato: Dia-Mes-Año

Fecha <- seq(from = as.Date("2020-01-22"), to = as.Date("2020-06-08"), by="day")

#Formatear datos confirmados

vec1 <- as.vector(conf_chi) #tranformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #Filtrar datos en un rango
num1 <- as.numeric(vec2) #transformar a numericos
Confirmados <- as.vector(num1) #vector numerico

#Formatear datos decesos
vec1 <- as.vector(dec_chi) #tranformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #Filtrar datos en un rango
num1 <- as.numeric(vec2) #transformar a numericos
Decesos <- as.vector(num1) #vector numerico

#Formatear datos de recuperados
vec1 <- as.vector(rec_chi) #tranformar de formato matriz a vector de caracteres
vec2 <- vec1[5:143] #Filtrar datos en un rango
num1 <- as.numeric(vec2) #transformar a numericos
Recuperados <- as.vector(num1) #vector numerico

#Para construir un marco de datos
datos1 <- data.frame(Fecha, Confirmados, Recuperados, Decesos)

#Figura 2 de casos confirmados en China utilizando ggplot en donde podemos ver
#Que los casos confirmados subieron drasticamente pero se mantuvieron estables
#despues del mes de marzo

ggplot (data=datos1)+
  geom_line(mapping = aes(x = Fecha, y= Confirmados))

#Figura 3 de Decesos. En esta figura observamos que los decesos se detuvieron

ggplot (data=datos1)+
  geom_line(mapping = aes(x = Fecha, y= Decesos))

#Figura 4 de Recuperados. La recuperacion de la poblacion china fue muy rapida
#puesto que subio casi de inmediato.

ggplot (data=datos1)+
  geom_line(mapping = aes(x = Fecha, y= Recuperados))

#Animacion simple. En esta animacion se aprecia como los confirmados subieron 
#abruptamente por la congestion de personas pero de inmediato se recuperaron
#y no hay muchos decesos.
ggplot(data = datos1)+
  ggtitle("Casos confirmados acumulados COVID-19 en China")+
  geom_line(mapping = aes(x = Fecha, y= Confirmados))+
  transition_reveal(Fecha)

#Figura 5 multiejes

ggplot(data=datos1) +
  geom_line(aes(x=Fecha,y=Confirmados),color='red') + 
  geom_line(aes(x=Fecha,y=Decesos),color='blue') + 
  geom_line(aes(x=Fecha,y=Recuperados),color='green')+
  ylab('COVID-19 China') + xlab('Fecha')+
  transition_reveal(Fecha)

#Grafica interactiva compuesta
gcov <-ggplot(data=datos1) +
  geom_line(aes(x=Fecha,y=Confirmados),colour='red') + 
  geom_line(aes(x=Fecha,y=Decesos),colour='blue') + 
  geom_line(aes(x=Fecha,y=Recuperados),colour="green")+
  ylab('COVID-19 China') + xlab('Fecha') +
  transition_reveal(Fecha)
ggplotly(gcov)