Rodrigo Lara(rolaro@alumni.uv.es)
Ignacio Corachan Perez(igcope@alumni.uv.es)
Sergio Escorcia Torres(seresto@alumni.uv.es).
Universitat de ValènciaTrabajo elaborado para la asignatura “Programación y manejo de datos en la era del Big Data” de la Universitat de València durante el curso 2020-2021. La página web de la asignatura puede verse aquí: https://perezp44.github.io/intro-ds-20-21-web/. Los trabajos de mis compañeros de curso pueden verse aquí.
El objetivo de este trabajo es mostrar la evolución y el impacto de algunas variables medioambientales relevantes (las emisiones del CO2, estudiaremos su evolución así como las principales causas de sus aumentos y que países son los principales responsables) y ver el impacto negativo que provoca a nivel medioambiental en el mundo y como esto nos afecta (incrementos de temperatura). También veremos brevemente la evolución de las energias renovables a nivel mundial.
Los datos utilizados provienen del Banco Mundial
Primero importamos las librerias básicas, utilizamos más librerias pero las llamamos cuando las necesitamos. Les remito al sessionInfo()
para ver todos los paquetes utilizados.
library(tidyverse)
library(sf)
library(viridis) #- install.packages("viridis")
library(plotly)
library(gganimate)
library(transformr) #-install.packages("transformr")
library(wordcloud2) #- install.packages("wordcloud2")
library(janitor)
Una vez cargados los paquetes que vamos a utilizar, procedemos a importar los datos que vamos a utilizar
df_co2<- read_csv("./Datos/nation_1751_2017.csv")
temp_country <-read_csv("./Datos/GlobalLandTemperaturesByCountry.csv")
coast_vs_waste <- read_csv("https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2019/2019-05-21/coastal-population-vs-mismanaged-plastic.csv")
mismanaged_vs_gdp <- read_csv("https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2019/2019-05-21/per-capita-mismanaged-plastic-waste-vs-gdp-per-capita.csv")
waste_vs_gdp <- read_csv("https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2019/2019-05-21/per-capita-plastic-waste-vs-gdp-per-capita.csv")
dco2_pc<- read_csv("./Datos/co2_pc.csv")
#Limpiamos el df y ponemos las variables como numericas
df_co2_2 <- df_co2[-c(1:4), ]
df_co2_2[ df_co2_2 == "." ] <- NA
df_co2_3 <- transform(df_co2_2, X2 = as.numeric(X2),
X3 = as.numeric(X3),
X4 = as.numeric(X4),
X5 = as.numeric(X5),
X6 = as.numeric(X6),
X7 = as.numeric(X7),
X8 = as.numeric(X8),
X9 = as.numeric(X9),
X10 = as.numeric(X10)
)
#comprobamos que las variables del df3 estan correctas
str(df_co2_3)
#> 'data.frame': 17928 obs. of 10 variables:
#> $ Carbon.Dioxide.emissions.from.fossil.fuel.consumption.and.cement.production.by.nation: chr "AFGHANISTAN" "AFGHANISTAN" "AFGHANISTAN" "AFGHANISTAN" ...
#> $ X2 : num 1949 1950 1951 1952 1953 ...
#> $ X3 : num 4 23 25 25 29 29 42 50 80 90 ...
#> $ X4 : num 4 6 7 9 10 12 17 17 21 25 ...
#> $ X5 : num 0 18 18 17 18 18 25 33 59 65 ...
#> $ X6 : num 0 0 0 0 0 0 0 0 0 0 ...
#> $ X7 : num 0 0 0 0 0 0 0 0 0 0 ...
#> $ X8 : num NA 0 0 0 0 0 0 0 0 0 ...
#> $ X9 : num NA 0 0 0 0 0 0.01 0.01 0.01 0.01 ...
#> $ X10 : num 0 0 0 0 0 0 0 0 0 0 ...
#renombramos las variables para trabajar de manera mas cómoda
df_co2_4 <- df_co2_3 %>% rename(country = `Carbon.Dioxide.emissions.from.fossil.fuel.consumption.and.cement.production.by.nation`,
year = X2,
total_co2 = X3 #`Total CO2 emissions from fossil-fuels and cement production (thousand metric tons of C)`
,
em_sf = X4, #`Emissions from solid fuel consumption`
em_lf = X5, #`Emissions from liquid fuel consumption`
em_gf = X6, #`Emissions from gas fuel consumption`
em_cp = X7, #`Emissions from cement production` ,
em_gfl = X8, #`Emissions from gas flaring`
em_co2_pc = X9, #`Per capita CO2 emissions (metric tons of carbon)`
em_bf = X10 #`Emissions from bunker fuels`
)
#creamos los diferentes df modificados que vamos a usar
n_df_0 <- df_co2_4%>% select(year,country,total_co2)%>% filter(year==2010) %>% group_by(country)%>% select(-year) %>% arrange(total_co2)
n_df <- df_co2_4 %>% group_by(country) %>% summarise(total_co2=sum(total_co2))%>% ungroup() %>% slice_max(total_co2,n=20) %>% arrange(desc(total_co2))
n_df2 <- df_co2_4 %>% filter(year > 2000) %>% group_by(country) %>% summarise(em_co2_pc=sum(em_co2_pc))%>% ungroup() %>% slice_max(em_co2_pc,n=40) %>% arrange(desc(em_co2_pc))
w_df <- df_co2_4 %>% group_by(year) %>% summarise(n=sum(total_co2))%>% ungroup()
En primer lugar estudiamos la evolución de las emisiones de CO2, los motivos por los que han ido aumentando desde el siglo XIX y sus causas.
Observamos en el gráfico el crecimiento exponencial de las emisiones de CO2 durante el siglo XX y XXI. El crecimiento de las emisiones empieza en la década de 1850, con la Primera Revolución Industrial y la expansión de este acontecimiento por el resto de Europa, ya que la maquinaria creada durante este proceso utilizaba combustibles contaminantes como diversos tipos de carbón. Sin embargo, no es hasta finales del siglo XIX con la Segunda Revolución Industrial que el crecimiento se vuelve exponencial con Estados Unidos a la cabeza como máximo emisor de CO2. Este crecimiento se mantiene hasta el cuarto final del siglo XX, debido a la inclusión de varias innovaciones como los fertilizantes de nitrógeno, varios usos de gases fluorados, tala de selvas tropicales, etc. Después el crecimiento en emisiones se ralentiza (pero continua creciendo aunque a un ritmo mas decelerado) para continuar con el crecimiento exponencial desde principios del siglo XXI, donde China superaría a Estados Unidos como principal emisor.
Año | Emisiones de co2 |
---|---|
2000 | 6479271 |
1975 | 4499682 |
1950 | 1579187 |
1900 | 533108 |
1850 | 53738 |
1800 | 7667 |
#primer Gráfico
smoothScatter(w_df,ylab = "Em.Co2", xlab = "Año")
#Grafico animado
o<- w_df %>% ggplot() +
geom_line(aes(year,n))
ooo<- o + transition_reveal(year) +
labs(title = "Año: {as.integer(frame_along)}", y = "Emisiones co2", x = "año")
anim_save("./imagenes/ooo.gif", ooo)
tabla1 <- w_df %>% filter(year %in% c(1800, 1850, 1900, 1950, 1975, 2000))
knitr::kable(tabla1)
Observamos que las emisiones de CO2 empiezan a crecer a partir de 1850, con la Primera Revolución Industrial que introdujo, entre otras cosas, el uso del carbón como combustible y fuente de energia. Reino Unido se mantiene líder en emisiones de CO2 desde 1850 a 1890, debido a que es el lugar donde empieza la Primera Revolución Industrial y por lo tanto, el país con maquinaria más contaminante en ese momento. Se observa en 1890 un cambio, Estados Unidos pasa a ser el país más contaminante coincidiendo con su paso a Reino Unido como primera potencia mundial debido a la Segunda Revolución Industrial, en la que Reino Unido se queda atrás por el alto coste de oportunidad de cambiar la maquinaria antigua de la Primera Revolución por la mas moderna de la Segunda. Estados Unidos lidera en emisiones de CO2 desde este momento y durante todo el siglo XX hasta 2006, momento en que es superado por China como país con más emisiones.
Por lo tanto distinguimos 4 etapas diferenciadas en la tabla a continuación:
Primera etapa: previa a la Revolución Industrial, donde no había apenas emisión de estos gases.
Segunda etapa: durante la primera Revolución Industrial y hasta 1890, donde Reino Unido lidera en emisiones debido a los carbones que se utilizaban en la maquinaria innovada durante esta época.
Tercera etapa: que abarca desde 1890 hasta 2005, donde Estados Unidos es el principal emisor de CO2 debido a la Segunda Revolución Industrial, a los varios inventos producidos durante el siglo XX (fertilizantes, ) y a la deforestación.
Cuarta etapa: donde China sobrepasa a Estados Unidos como principal emisor de CO2 en términos absolutos.
Gráfico 2
Año | País | Emisiones de co2 |
---|---|---|
1850 | UNITED KINGDOM | 33462 |
1889 | UNITED KINGDOM | 94166 |
1890 | UNITED STATES OF AMERICA | 109647 |
2005 | UNITED STATES OF AMERICA | 1577757 |
2006 | CHINA (MAINLAND) | 1736342 |
df_co2_5 <-df_co2_4 %>% group_by(country)
n_df_0 <- df_co2_4%>% select(year,country,total_co2)%>% filter(year==2010) %>% group_by(country)%>% select(-year) %>% arrange(total_co2)
n_df <- df_co2_4 %>% group_by(country) %>% summarise(total_co2=sum(total_co2))%>% ungroup() %>% slice_max(total_co2,n=20) %>% arrange(desc(total_co2))
n_df_2 <- df_co2_4 %>% filter(year > 2000) %>% group_by(country) %>% summarise(em_co2_pc=sum(em_co2_pc))%>% ungroup() %>% slice_max(em_co2_pc,n=15) %>% arrange(desc(em_co2_pc))
n_df_3 <- df_co2_4%>% group_by(country) %>% summarise(em_co2_pc=sum(em_co2_pc))%>% ungroup() %>% arrange(desc(em_co2_pc))
lf <- df_co2_5%>% filter(year >= 1980) %>% group_by(year) %>%
mutate(rank = rank(-total_co2),
Value_rel = total_co2/total_co2[rank==1],
Value_lbl = paste0(" ",round(total_co2/1e9))) %>%
group_by(country) %>%
filter(rank <=15) %>%
ungroup()
lf$country <- recode(lf$country,
"UNITED STATES OF AMERICA"="USA",
"CHINA (MAINLAND)"="CHINA",
"FRANCE (INCLUDING MONACO)"="FRANCE",
"ITALY (INCLUDING SAN MARINO)"="ITALY",
"RUSSIAN FEDERATION" = "RUSSIA"
)
staticplot = ggplot(lf, aes(rank, group = country,
fill = as.factor(country), color = as.factor(country))) +
geom_tile(aes(y = total_co2/2,
height = total_co2,
width = 0.9), alpha = 0.8, color = NA) +
geom_text(aes(y = 0, label = paste(country, " ")), vjust = 0.2, hjust = 1) +
#geom_text(aes(y=total_co2,label = Value_lbl, hjust=0)) +
coord_flip(clip = "off", expand = FALSE) +
scale_y_continuous(labels = scales::comma) +
scale_x_reverse() +
guides(color = FALSE, fill = FALSE) +
theme(axis.line=element_blank(),
axis.text.x=element_blank(),
axis.text.y=element_blank(),
axis.ticks=element_blank(),
axis.title.x=element_blank(),
axis.title.y=element_blank(),
legend.position="none",
panel.background=element_blank(),
panel.border=element_blank(),
panel.grid.major=element_blank(),
panel.grid.minor=element_blank(),
panel.grid.major.x = element_line( size=.1, color="grey" ),
panel.grid.minor.x = element_line( size=.1, color="grey" ),
plot.title=element_text(size=25, hjust=0.5, face="bold", colour="grey", vjust=-1),
plot.subtitle=element_text(size=18, hjust=0.5, face="italic", color="grey"),
plot.caption =element_text(size=8, hjust=0.5, face="italic", color="grey"),
plot.background=element_blank(),
plot.margin = margin(2,2, 2, 4, "cm"))
anim = staticplot + transition_states(year, transition_length = 4, state_length = 1) +
view_follow(fixed_x = TRUE) +
labs(title = 'CO2 total : {closest_state}',
subtitle = "Top 15 países",
caption = "fuente: World Bank Data")
anim_save("./imagenes/anim.gif", anim)
g<- df_co2_5 %>% ggplot() +
geom_line(aes(year,total_co2 ,color = country,group=country) ) +
theme(legend.position="none")
goo <- g + transition_reveal(year) +
labs(title = "Año: {as.integer(frame_along)}", x = "Año", y ="Emisiones de co2")
anim_save("./imagenes/goo.gif", goo)
tabla2 <- df_co2_4 %>% select(year, country, total_co2) %>% filter(year %in% c(1850, 1889, 1890, 2005, 2006)) %>% group_by(year) %>% slice_max(total_co2) %>% rename("Año" = year, "País" = country,"Emisiones de co2" =total_co2)
knitr::kable(tabla2)
Pasamos a visualizar los datos con un gráfico circular, donde podemos ver los mayores emisores desde el año 2000 de dióxido de carbono per cápita.
Destacamos que los primeros paises en emisiones de dióxido de carbono per cápita utilizan como fuente de energia principal el petróleo (Qatar, Kuwait, Emiratos Árabes Unidos, Bahrein…) a la vez que también lo exportan debido a las grandes reservas del mismo. Estados Unidos aparece en la posición novena y China, el mayor emisor de CO2 en términos absolutos, no aparece entre los 40 primeros.
country | em_co2_pc |
---|---|
QATAR | 224.82 |
TRINIDAD AND TOBAGO | 141.77 |
KUWAIT | 131.00 |
UNITED ARAB EMIRATES | 109.74 |
BAHRAIN | 105.22 |
LUXEMBOURG | 94.94 |
ARUBA | 93.69 |
BRUNEI (DARUSSALAM) | 85.95 |
UNITED STATES OF AMERICA | 81.33 |
SAUDI ARABIA | 79.20 |
n_df3 <- n_df2 %>% mutate(id = seq(1,40))
label_data <- n_df3
number_of_bar <- nrow(label_data)
angle <- 90 - 360 * (label_data$id-0.5) /number_of_bar
label_data$hjust<-ifelse( angle < -90, 1, 0)
label_data$angle<-ifelse(angle < -90, angle+180, angle)
p <- ggplot(n_df3, aes(x=as.factor(id), y=em_co2_pc,fill=em_co2_pc)) +
geom_bar(stat="identity") +
ylim(-100,400) +
theme_minimal() +
theme(
axis.text = element_blank(),
axis.title = element_blank(),
panel.grid = element_blank(),
plot.margin = unit(rep(-1,4), "cm")
) +
coord_polar(start = 0) +
geom_text(data=label_data, aes(x=id, y=em_co2_pc, label=country, hjust=hjust), color="black", fontface="bold",alpha=0.6, size=2.5, angle= label_data$angle, inherit.aes = FALSE ) +
scale_fill_viridis_c(option = "B", trans = "sqrt")
p
tabla3 <- n_df3 %>% slice_max(em_co2_pc, n = 10)
knitr::kable(tabla3)
Ahora estudiamos el total acumulado de emisiones de CO2 por país, y observamos que los 5 primeros son Estados Unidos (quién estuvo durante todo el siglo XX como primer emisor), China (actual primer emisor desde 2006 de CO2), la URSS (cuyos datos terminan en 1992 con su disolución), Reino Unido (principal emisor en 1850-1890 con la Revolución Industrial) y Japón. Lo vemos de dos formas:
#gráfico mayores productores co2 del mundo(acumulado total)
p<- n_df %>% ggplot(aes(x = reorder(country, total_co2),total_co2,fill= total_co2)) +
geom_bar(stat = "identity") +
theme(legend.position = "none") +
coord_flip()
p
#gráfico mayores productores co2 del mundo(acumulado total)
h<- n_df %>% ggplot(aes(x = reorder(country, total_co2),total_co2,fill= total_co2)) +
geom_bar(stat = "identity") +
theme(legend.position = "none") +
coord_flip() +
labs(x = "Co2 total" , y= " Países")
h
#Gráfico paises con mas emisiones de co2
n_df6 <- df_co2_4 %>% group_by(country) %>% summarise(total_co2=sum(total_co2))%>% ungroup() %>% arrange(desc(total_co2))
n_df_0$country <- recode(n_df_0$country,
"UNITED STATES OF AMERICA"="USA",
"CHINA (MAINLAND)"="CHINA",
"FRANCE (INCLUDING MONACO)"="FRANCE",
"ITALY (INCLUDING SAN MARINO)"="ITALY",
"RUSSIAN FEDERATION" = "RUSSIA"
)
wordcloud2(data = n_df_0, size = 0.8
)
Pasamos a utilizar una representación geográfica para ver las emisiones de CO2 por país en 2010 y las emisiones por país y per cápita para el mismo año.
Los colores más oscuros indican una mayor emisión de CO2 a la atmosfera donde claramente se distinguen China y Estados Unidos en términos absolutos.
Para las emisiones de CO2 per cápita el color más claro representa una mayor emisión de estos gases, donde observamos a varios países árabes (con reservas de petróleo) como principales emisores per cápita.
#install.packages("viridis")
library(viridis)
library(sf)
library(tidyverse)
world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
world_points<- st_centroid(world)
world_points <- cbind(world, st_coordinates(st_centroid(world$geometry)))
#mapa co2 per capita
library(tidyverse)
#mapa co2
dco2<- read_csv("./Datos/co2.csv")
world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
dco2[ dco2 == ".." ] <- NA
dco2 <- dco2 %>% select(`Country Name`,`2010 [YR2010]`)
dfo3 <- dco2 %>% rename(sovereignt = `Country Name`,
co2 = `2010 [YR2010]`
)
dfo3$sovereignt <- recode(dfo3$sovereignt,
"United States"="United States of America",
"Russian Federation" = "Russia",
"Venezuela, RB" = "Venezuela",
"Congo, Dem. Rep." = "Democratic Republic of the Congo" ,
" Congo, Rep."="Republic of Congo" ,
"Egypt, Arab Rep." = "Egypt" ,
"Tanzania" = "United Republic of Tanzania",
"Cote d'Ivoire" = "Ivory Coast",
"Yemen, Rep." = "Yemen",
"Iran, Islamic Rep." = "Iran",
"Syrian Arab Republic" = "Syria",
"Slovak Republic" = "Slovakia",
"Serbia" = "Republic of Serbia",
"North Macedonia" = "Macedonia",
"Kyrgyz Republic" = "Kyrgyzstan",
"Korea, Dem. People’s Rep" = "North Korea",
"Korea, Rep." = "South Korea",
"Lao PDR" = "Laos"
)
df_inner <- left_join(world,dfo3)
df_co2 <- transform(df_inner, co2 = as.numeric(co2)
) %>% filter(!(sovereignt == "Antarctica"))
p <- ggplot(data = df_co2) + geom_sf() +
labs(title = "Mapa emisiones de co2",
caption = "Datos provenientes de World Bank")
p + geom_sf(aes(fill = co2, color =co2)) + scale_fill_viridis(direction = -1, label = scales::number,begin = 0, end = 0.8,) +
scale_color_viridis(direction = -1, label = scales::number,begin = 0, end = 0.8)
#Gráfico co2 pc
library(viridis)
library(sf)
library(tidyverse)
world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
world_points<- st_centroid(world)
world_points <- cbind(world, st_coordinates(st_centroid(world$geometry)))
dco2_pc<- read_csv("./Datos/co2_pc.csv")
dco2_pc[ dco2_pc == ".." ] <- NA
dco_pc <- dco2_pc %>% select(`Country Name`,`2010 [YR2010]`)
dfo3_pc <- dco2_pc %>% rename(sovereignt = `Country Name`,
co2_pc = `2010 [YR2010]`
)
dfo3_pc$sovereignt <- recode(dfo3_pc$sovereignt,
"United States"="United States of America",
"Russian Federation" = "Russia",
"Venezuela, RB" = "Venezuela",
"Congo, Dem. Rep." = "Democratic Republic of the Congo" ,
" Congo, Rep."="Republic of Congo" ,
"Egypt, Arab Rep." = "Egypt" ,
"Tanzania" = "United Republic of Tanzania",
"Cote d'Ivoire" = "Ivory Coast",
"Yemen, Rep." = "Yemen",
"Iran, Islamic Rep." = "Iran",
"Syrian Arab Republic" = "Syria",
"Slovak Republic" = "Slovakia",
"Serbia" = "Republic of Serbia",
"North Macedonia" = "Macedonia",
"Kyrgyz Republic" = "Kyrgyzstan",
"Korea, Dem. People’s Rep" = "North Korea",
"Korea, Rep." = "South Korea",
"Lao PDR" = "Laos"
)
df_inner_pc <- left_join(world,dfo3_pc)
df_co2_pc <- transform(df_inner_pc, co2_pc = as.numeric(co2_pc)
) %>% filter(!(sovereignt == "Antarctica"))
p <- ggplot(data = df_co2_pc) + geom_sf() +
labs(title = "Gráfico 1: Mapa del mundo",
caption = "Datos provenientes de rnaturalearth")
p + geom_sf(aes(fill = co2_pc)) + scale_fill_viridis_c(option = "B", trans = "sqrt")
Con este análisis pretendemos estudiar las consecuencias de la emisión de CO2 durante todos estos años en nuestra vida, más concretamente, en los incrementos de temperatura que hemos experimentado por la liberación de estos gases a la atmósfera.
Observamos que se ha producido un incremento de la temperatura desde 1900 hasta nuestros dias debido a la emisión de estos gases de efecto invernadero. Estos gases de efecto invernadero (entre los que se incluyen el CO2, ozono, etc.) reflejan el calor producido por la superficie terrestre, por lo que producen un incremento de la temperatura global.
La producción de CO2 que hemos analizado es una de los principales causas (y sigue un comportamiento similar) del aumento de temperatura que vamos a ver en los siguientes gráficos.
library(tidyverse)
library(gganimate)
library(lubridate)
pct <- function(x) {((x/lag(x)
)-1)*2}
pct2 <- function(x) {((x/lag(x)
)-1)*100}
temp_country <-read_csv("./Datos/GlobalLandTemperaturesByCountry.csv")
temp_2000 <- subset(temp_country,dt> "1899-12-01")
climate_change <- temp_2000 %>%
mutate_at(vars(dt), funs(year, month, day)) %>% drop_na() %>% filter(Country == "Spain")
climate_change$month[climate_change$month == 1]<- "01-Enero"
climate_change$month[climate_change$month == 2]<- "02-Febrero"
climate_change$month[climate_change$month == 3]<- "03-Marzo"
climate_change$month[climate_change$month == 4]<- "04-Abril"
climate_change$month[climate_change$month == 5]<- "05-Mayo"
climate_change$month[climate_change$month == 6]<- "06-Junio"
climate_change$month[climate_change$month == 7]<- "07-Julio"
climate_change$month[climate_change$month == 8]<- "08-Agosto"
climate_change$month[climate_change$month == 9]<- "09-Septiembre"
climate_change$month[climate_change$month == 10]<- "10-Octubre"
climate_change$month[climate_change$month == 11]<- "11-Noviembre"
climate_change$month[climate_change$month == 12]<- "12-Diciembre"
t_df <- temp_2000 %>% drop_na() %>%
mutate(month = format(dt, "%m"), year = format(dt, "%Y")) %>%
group_by(month, year) %>%
summarise(mean = mean(AverageTemperature))
t_df2 <- t_df %>% group_by(year) %>% summarise(tmean= mean(mean))
t_df2 <- transform(t_df2, year = as.numeric(year))
w_df2 <- w_df %>% filter(year > 1899)
w_df3 <- w_df2 %>% mutate_each(funs(pct), n) %>% drop_na()
t_df3 <- t_df2 %>% mutate_each(funs(pct2), tmean) %>% drop_na()
w_df4 <- w_df3 %>% mutate(tco2 = cumsum(n))
t_df4 <- t_df3 %>% mutate(temp = cumsum(tmean))
y <-ggplot() +
geom_line(data =w_df4,aes(year,tco2,color="CO2")) +
#geom_smooth(data = w_df4,aes(year,tco2)) +
#theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) +
#geom_smooth(data = t_df4,aes(year,temp),colour= "purple") +
geom_line(data = t_df4,aes(year,temp,group=1,color="Temperatura"))
temPco2gf <- y + transition_reveal(year) +
labs(title = "Año: {as.integer(frame_along)}",
x = "Año",
y = "Temperatura y CO2",
colour="Variables")
anim_save("./imagenes/gf_tempco2.gif",temPco2gf )
temp_country <-read_csv("./Datos/GlobalLandTemperaturesByCountry.csv")
temp_2000 <- subset(temp_country,dt> "1899-12-01")
climate_change <- temp_2000 %>% separate( "dt", c("año", "mes", "dia"), sep = "-") %>% transform( año = as.numeric(año),
mes = as.numeric(mes),
dia = as.numeric(dia)
) %>% drop_na() %>% filter(Country == "Spain")
climate_change$mes[climate_change$mes == 1]<- "01-Enero"
climate_change$mes[climate_change$mes == 2]<- "02-Febrero"
climate_change$mes[climate_change$mes == 3]<- "03-Marzo"
climate_change$mes[climate_change$mes == 4]<- "04-Abril"
climate_change$mes[climate_change$mes == 5]<- "05-Mayo"
climate_change$mes[climate_change$mes == 6]<- "06-Junio"
climate_change$mes[climate_change$mes == 7]<- "07-Julio"
climate_change$mes[climate_change$mes == 8]<- "08-Agosto"
climate_change$mes[climate_change$mes == 9]<- "09-Septiembre"
climate_change$mes[climate_change$mes == 10]<- "10-Octubre"
climate_change$mes[climate_change$mes == 11]<- "11-Noviembre"
climate_change$mes[climate_change$mes == 12]<- "12-Diciembre"
gf_temp_month <- ggplot(climate_change, aes(año, AverageTemperature, size = AverageTemperatureUncertainty , color = mes )) + geom_point(alpha = 0.4, show.legend = FALSE) +
facet_wrap(~mes) +
labs(title = 'Año: {as.integer(frame_time)}', x = 'Año', y = 'Temperatura Media') +
transition_time(año) +
ease_aes('linear')
anim_save("./imagenes/gf_month.gif", gf_temp_month)
Analizamos ahora la evolución que han seguido las energias renovables. Estas tecnologías pretenden ser mas amigables con el medio ambiente, disminuyendo la contaminación a la vez que producen energia.
En las principales economías mundiales (Estados Unidos, Europa y parte de Asia) no se han producido ningún avance o muy poco en este sentido, y que son los países mas subdesarrollados (América del Sur y la parte central de África) los que más proporción de energia renovable usan, sin embargo, conforme se han ido desarrollando han ido utilizando menos las energias renovables. Este es el caso de Brasil, quién además ha deforestado parte de su superficie. Si nos centramos en Europa podemos ver que ha habido cierto avance en los ultimos 15 años , aunque aún hay mucho por hacer.
library(tidyverse)
library(rio)
library(plotly)
library(janitor)
library(gganimate)
library(viridis)
library("sf")
url <-("https://raw.githubusercontent.com/rodri45l/plasticwaste/main/trabajo_BigData_equipo/datos/renpwr.csv")
df <- import(url)
df_pwr <- df %>% select(-c(`Series Name`,`Series Code`)) %>% rename(sovereignt = `Country Name`)
names(df_pwr) <- stringr::str_remove(string = names(df_pwr), pattern = "\\s.*")
df_pwr$sovereignt <- recode(df_pwr$sovereignt,
"United States"="United States of America",
"Russian Federation" = "Russia",
"Venezuela, RB" = "Venezuela",
"Congo, Dem. Rep." = "Democratic Republic of the Congo" ,
" Congo, Rep."="Republic of Congo" ,
"Egypt, Arab Rep." = "Egypt" ,
"Tanzania" = "United Republic of Tanzania",
"Cote d'Ivoire" = "Ivory Coast",
"Yemen, Rep." = "Yemen",
"Iran, Islamic Rep." = "Iran",
"Syrian Arab Republic" = "Syria",
"Slovak Republic" = "Slovakia",
"Serbia" = "Republic of Serbia",
"North Macedonia" = "Macedonia",
"Kyrgyz Republic" = "Kyrgyzstan",
"Korea, Dem. People’s Rep" = "North Korea",
"Korea, Rep." = "South Korea",
"Lao PDR" = "Laos")
df_pwr2 <- df_pwr %>% pivot_longer(cols = 3:28, names_to = "year") %>%
mutate(year = as.numeric(year)) %>%
mutate(value = as.numeric(value)) %>%
filter(year == 2015)
world <- rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
world_points<- st_centroid(world)
world_points <- cbind(world, st_coordinates(st_centroid(world$geometry)))
df_inner_pwr <- inner_join(world, df_pwr2, by= c("sovereignt" = "sovereignt"))
df_pwr4 <- df_pwr %>% pivot_longer(cols = 3:28, names_to = "year")
df_pwr5 <-df_pwr4 %>% mutate(year = as.numeric(year)) %>%
mutate(value = as.numeric(value))
df_pwr5 <- inner_join(world, df_pwr5, by= c("sovereignt" = "sovereignt"))
#df_pwr6
names(df_pwr4)
df_pwr9 <- df_pwr5 %>% select(sovereignt, year, value)
p <- ggplot() + geom_sf(data = df_pwr9, aes(fill = value)) +
labs(title = "Mapa del mundo energias renovables 1990 - 2015",
caption = "Datos provenientes de World Bank") +
scale_fill_viridis(direction = 1, label = scales::number,begin = 0, end = 0.9) +
transition_time(year) + labs(title = "Porcentaje de energia renovable por país", subtitle = "Año:{as.integer(frame_time)}" )
anim <- animate(p)
anim_save("./imagenes/map6.gif", anim)
#-----------------------
df_pwr10 <- df_pwr5 %>% filter(continent == "Europe")
i <- ggplot() + geom_sf(data = df_pwr10, aes(fill = value)) +
labs(title = "Mapa Europa energias renovables 1990 - 2015",
caption = "Datos provenientes de World Bank") +
coord_sf(xlim = c(-35, 50), ylim = c(30, 80))+
scale_fill_viridis(direction = 1, label = scales::number,begin = 0, end = 0.9) +
transition_time(year) + labs(title = "Porcentaje de energia renovable por país", subtitle = "Año:{as.integer(frame_time)}" )
anim1 <- animate(i)
anim_save("./imagenes/mapp.gif", anim1)
#-----------------------------------------------------------------
df_pwr11 <- df_pwr10 %>% filter(year == 2015) %>% select(sovereignt, year, value)
library(treemapify)
ggplot(df_pwr11, aes(area = value, fill = value, label = sovereignt )) +
geom_treemap() +
geom_treemap_text(colour = "white", place = "centre",
grow = FALSE) +
scale_fill_viridis_c(option = "D" , name = "", alpha = 0.8, begin = 0.3, end = 0.7, direction = 1,
guide = guide_colorbar( title = "% Energia renovable", direction = "horizontal", barheight = unit(2, units = "mm"),
barwidth = unit(50, units = "mm"), draw.ulim = F,
title.position = 'top', title.hjust = 0.5, label.hjust = 0.5)) +
theme(legend.position = "bottom") + scale_x_continuous(labels=function(value){format(value, scientific = FALSE)}) +
labs(title = "Porcentaje de energías renovables por países") + theme(plot.title = element_text(hjust = 0.5)) +
theme(plot.subtitle = element_text(hjust = 0.5))
session info
sessioninfo::session_info() %>% details::details(summary = 'current session info')
current session info
- Session info ---------------------------------------------------------------
setting value
version R version 4.0.2 (2020-06-22)
os Windows 10 x64
system x86_64, mingw32
ui RTerm
language (EN)
collate Spanish_Spain.1252
ctype Spanish_Spain.1252
tz Europe/Paris
date 2020-12-18
- Packages -------------------------------------------------------------------
package * version date lib source
assertthat 0.2.1 2019-03-21 [1] CRAN (R 4.0.2)
backports 1.1.9 2020-08-24 [1] CRAN (R 4.0.2)
base64enc 0.1-3 2015-07-28 [1] CRAN (R 4.0.0)
blob 1.2.1 2020-01-20 [1] CRAN (R 4.0.2)
broom 0.7.0 2020-07-09 [1] CRAN (R 4.0.2)
Cairo 1.5-12.2 2020-07-07 [1] CRAN (R 4.0.2)
cellranger 1.1.0 2016-07-27 [1] CRAN (R 4.0.2)
class 7.3-17 2020-04-26 [2] CRAN (R 4.0.2)
classInt 0.4-3 2020-04-07 [1] CRAN (R 4.0.2)
cli 2.0.2 2020-02-28 [1] CRAN (R 4.0.2)
colorspace 1.4-1 2019-03-18 [1] CRAN (R 4.0.2)
crayon 1.3.4 2017-09-16 [1] CRAN (R 4.0.2)
crosstalk 1.1.0.1 2020-03-13 [1] CRAN (R 4.0.2)
curl 4.3 2019-12-02 [1] CRAN (R 4.0.2)
data.table 1.13.0 2020-07-24 [1] CRAN (R 4.0.2)
DBI 1.1.0 2019-12-15 [1] CRAN (R 4.0.2)
dbplyr 1.4.4 2020-05-27 [1] CRAN (R 4.0.2)
digest 0.6.25 2020-02-23 [1] CRAN (R 4.0.2)
dplyr * 1.0.2 2020-08-18 [1] CRAN (R 4.0.2)
e1071 1.7-3 2019-11-26 [1] CRAN (R 4.0.2)
ellipsis 0.3.1 2020-05-15 [1] CRAN (R 4.0.2)
evaluate 0.14 2019-05-28 [1] CRAN (R 4.0.2)
fansi 0.4.1 2020-01-08 [1] CRAN (R 4.0.2)
farver 2.0.3 2020-01-16 [1] CRAN (R 4.0.2)
forcats * 0.5.0 2020-03-01 [1] CRAN (R 4.0.2)
fs 1.5.0 2020-07-31 [1] CRAN (R 4.0.2)
generics 0.1.0 2020-10-31 [1] CRAN (R 4.0.3)
gganimate * 1.0.6 2020-07-08 [1] CRAN (R 4.0.2)
ggplot2 * 3.3.2 2020-06-19 [1] CRAN (R 4.0.2)
gifski 0.8.6 2018-09-28 [1] CRAN (R 4.0.2)
glue 1.4.2 2020-08-27 [1] CRAN (R 4.0.2)
gridExtra 2.3 2017-09-09 [1] CRAN (R 4.0.3)
gtable 0.3.0 2019-03-25 [1] CRAN (R 4.0.2)
haven 2.3.1 2020-06-01 [1] CRAN (R 4.0.2)
highr 0.8 2019-03-20 [1] CRAN (R 4.0.2)
hms 0.5.3 2020-01-08 [1] CRAN (R 4.0.2)
htmltools 0.5.0 2020-06-16 [1] CRAN (R 4.0.2)
htmlwidgets 1.5.1 2019-10-08 [1] CRAN (R 4.0.2)
httr 1.4.2 2020-07-20 [1] CRAN (R 4.0.2)
janitor * 2.0.1 2020-04-12 [1] CRAN (R 4.0.3)
jsonlite 1.7.1 2020-09-07 [1] CRAN (R 4.0.2)
KernSmooth 2.23-17 2020-04-26 [2] CRAN (R 4.0.2)
klippy * 0.0.0.9500 2020-11-13 [1] Github (rlesur/klippy@378c247)
knitr * 1.29 2020-06-23 [1] CRAN (R 4.0.2)
labeling 0.3 2014-08-23 [1] CRAN (R 4.0.0)
lattice 0.20-41 2020-04-02 [2] CRAN (R 4.0.2)
lazyeval 0.2.2 2019-03-15 [1] CRAN (R 4.0.2)
lifecycle 0.2.0 2020-03-06 [1] CRAN (R 4.0.2)
lpSolve 5.6.15 2020-01-24 [1] CRAN (R 4.0.3)
lubridate 1.7.9 2020-06-08 [1] CRAN (R 4.0.2)
magrittr 1.5 2014-11-22 [1] CRAN (R 4.0.2)
modelr 0.1.8 2020-05-19 [1] CRAN (R 4.0.2)
munsell 0.5.0 2018-06-12 [1] CRAN (R 4.0.2)
pillar 1.4.6 2020-07-10 [1] CRAN (R 4.0.2)
pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.0.2)
plotly * 4.9.2.1 2020-04-04 [1] CRAN (R 4.0.2)
plyr 1.8.6 2020-03-03 [1] CRAN (R 4.0.2)
prettyunits 1.1.1 2020-01-24 [1] CRAN (R 4.0.2)
progress 1.2.2 2019-05-16 [1] CRAN (R 4.0.2)
purrr * 0.3.4 2020-04-17 [1] CRAN (R 4.0.2)
R6 2.4.1 2019-11-12 [1] CRAN (R 4.0.2)
Rcpp 1.0.5 2020-07-06 [1] CRAN (R 4.0.2)
readr * 1.3.1 2018-12-21 [1] CRAN (R 4.0.2)
readxl 1.3.1 2019-03-13 [1] CRAN (R 4.0.2)
reprex 0.3.0 2019-05-16 [1] CRAN (R 4.0.2)
rgeos 0.5-5 2020-09-07 [1] CRAN (R 4.0.3)
rlang 0.4.9 2020-11-26 [1] CRAN (R 4.0.3)
rmarkdown 2.3 2020-06-18 [1] CRAN (R 4.0.2)
rnaturalearth 0.1.0 2017-03-21 [1] CRAN (R 4.0.3)
rnaturalearthdata 0.1.0 2017-02-21 [1] CRAN (R 4.0.3)
rstudioapi 0.11 2020-02-07 [1] CRAN (R 4.0.2)
rvest 0.3.6 2020-07-25 [1] CRAN (R 4.0.2)
scales 1.1.1 2020-05-11 [1] CRAN (R 4.0.2)
sessioninfo 1.1.1 2018-11-05 [1] CRAN (R 4.0.2)
sf * 0.9-5 2020-07-14 [1] CRAN (R 4.0.2)
snakecase 0.11.0 2019-05-25 [1] CRAN (R 4.0.3)
sp 1.4-2 2020-05-20 [1] CRAN (R 4.0.2)
stringi 1.5.3 2020-09-09 [1] CRAN (R 4.0.2)
stringr * 1.4.0 2019-02-10 [1] CRAN (R 4.0.2)
tibble * 3.0.3 2020-07-10 [1] CRAN (R 4.0.2)
tidyr * 1.1.2 2020-08-27 [1] CRAN (R 4.0.2)
tidyselect 1.1.0 2020-05-11 [1] CRAN (R 4.0.2)
tidyverse * 1.3.0 2019-11-21 [1] CRAN (R 4.0.2)
transformr * 0.1.3 2020-07-05 [1] CRAN (R 4.0.3)
tweenr 1.0.1 2018-12-14 [1] CRAN (R 4.0.2)
units 0.6-7 2020-06-13 [1] CRAN (R 4.0.2)
vctrs 0.3.4 2020-08-29 [1] CRAN (R 4.0.2)
viridis * 0.5.1 2018-03-29 [1] CRAN (R 4.0.3)
viridisLite * 0.3.0 2018-02-01 [1] CRAN (R 4.0.2)
withr 2.2.0 2020-04-20 [1] CRAN (R 4.0.2)
wordcloud2 * 0.2.1 2018-01-03 [1] CRAN (R 4.0.3)
xfun 0.16 2020-07-24 [1] CRAN (R 4.0.2)
xml2 1.3.2 2020-04-23 [1] CRAN (R 4.0.2)
yaml 2.2.1 2020-02-01 [1] CRAN (R 4.0.2)
[1] C:/Users/rodri/OneDrive/Documentos/R/win-library/4.0
[2] C:/Program Files/R/R-4.0.2/library