Created
November 18, 2022 00:34
-
-
Save sientifiko/f22e60bf9326e1443ec741ed9f866a87 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
library(tidyverse) | |
library(countrycode) | |
library(gganimate) | |
library(gifski) | |
theme_set(theme_classic()) | |
tiempo <- read.csv("annual-working-hours-per-worker.csv") | |
colnames(tiempo)[4] <- "tiempo" | |
complex <- read.csv("eci_hs6_hs96.csv") | |
complex$iso <-complex$Country.ID %>% str_sub(3, 5) %>% toupper() | |
complex <- complex %>% | |
gather("anno", "eci", 1:23) | |
complex$anno <- complex$anno %>% | |
str_extract("\\d+") %>% | |
as.numeric() | |
dat <- tiempo %>% | |
left_join( | |
complex %>% select(anno, iso, eci), | |
by = c("Code"="iso", | |
"Year" = "anno") | |
) | |
dat$region <- countrycode(dat$Code, | |
origin = "iso3c", | |
destination = "continent") | |
dat %>% | |
filter(Year >= 1998) %>% | |
ggplot() + | |
aes(eci, tiempo, color = Code) + | |
guides(color = "none") + | |
geom_jitter() + | |
facet_wrap(.~region) + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) ) + | |
labs(x="Índice de complejidad económica", | |
y="Horas de trabajo anual promedio", | |
title = "Relación entre complejidad económica y horas de trabajo", | |
subtitle = "Año: {as.integer(frame_time)}", | |
caption = "Con base a datos del de OWID y el OEC\n@sientifiko1") + | |
transition_time(Year) + | |
ease_aes("linear") + | |
shadow_mark(alpha = 0.3, size = 0.5) -> p1 | |
animate(p1, fps = 20, duration = 10, width = 1024, height= 450, | |
renderer = gifski_renderer("plotanimado.gif")) | |
energia <- read.csv("energy.csv") | |
colnames(energia)[4] <- "energy" | |
energia$Entity <- NULL | |
dat2 <- tiempo %>% | |
left_join(energia, | |
by = c("Year", | |
"Code")) | |
dat2$region <- countrycode(dat2$Code, | |
origin = "iso3c", | |
destination = "continent") | |
dat2 %>% | |
filter(Year == 2017) %>% | |
ggplot() + | |
aes(energy, tiempo, color = Code) + | |
guides(color = "none") + | |
geom_jitter() + | |
facet_wrap(.~region) + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) ) + | |
labs(x="Uso energía per cápita", | |
y="Horas de trabajo anual promedio", | |
title = "Relación entre energía y horas de trabajo", | |
subtitle = "2017", | |
caption = "Con base a datos del de OWID\n@sientifiko1") | |
dat2 %>% | |
filter(Year >= 1965) %>% | |
ggplot() + | |
aes(energy, tiempo, color = Code) + | |
guides(color = "none") + | |
geom_jitter() + | |
facet_wrap(.~region) + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) ) + | |
labs(x="Uso energía per cápita", | |
y="Horas de trabajo anual promedio", | |
title = "Relación entre energía y horas de trabajo", | |
subtitle = "Año: {as.integer(frame_time)}", | |
caption = "Con base a datos del de OWID\n@sientifiko1") + | |
transition_time(Year) + | |
ease_aes("linear") + | |
shadow_mark(alpha = 0.3, size = 0.5) -> p2 | |
animate(p2, fps = 20, duration = 10, width = 1024, height= 500, | |
renderer = gifski_renderer("plot2.gif")) | |
lat <- dat2 %>% | |
filter(region == "Americas") %>% | |
na.omit() | |
lat <- lat %>% | |
group_by(Code) %>% | |
mutate(t_std = scale(tiempo), | |
e_std = scale(energy)) | |
lat %>% | |
ggplot() + | |
aes(Year, color = Code) + | |
guides(color = "none") + | |
geom_line(aes(y=t_std, linetype = "Horas trabajo anual\npromedio")) + | |
geom_line(aes(y=e_std, linetype = "Energía\n en Kw/H pc")) + | |
facet_wrap(.~Code) + | |
# scale_y_continuous(trans = "log10") + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) , | |
legend.key.size = unit(1.5, 'cm'), | |
legend.text = element_text(size = 12)) + | |
labs(x="", | |
y="Escala en z-score por país", | |
linetype = "", | |
color = "", | |
title = "Relación entre energía y horas de trabajo", | |
subtitle = "Latinoamérica", | |
caption = "Con base a datos del de OWID\n@sientifiko1") | |
asia <- dat2 %>% | |
filter(region == "Asia") %>% | |
na.omit() | |
asia <- asia %>% | |
group_by(Code) %>% | |
mutate(t_std = scale(tiempo), | |
e_std = scale(energy)) | |
asia %>% | |
ggplot() + | |
aes(Year, color = Code) + | |
guides(color = "none") + | |
geom_line(aes(y=t_std, linetype = "Horas trabajo anual\npromedio")) + | |
geom_line(aes(y=e_std, linetype = "Energía\n en Kw/H pc")) + | |
facet_wrap(.~Code) + | |
# scale_y_continuous(trans = "log10") + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) , | |
legend.key.size = unit(1.5, 'cm'), | |
legend.text = element_text(size = 12)) + | |
labs(x="", | |
y="Escala en z-score por país", | |
linetype = "", | |
color = "", | |
title = "Relación entre energía y horas de trabajo", | |
subtitle = "Asia", | |
caption = "Con base a datos del de OWID\n@sientifiko1") | |
internet <- read.csv("share-of-individuals-using-the-internet.csv") | |
colnames(internet)[4] <- "inter" | |
internet$Entity <- NULL | |
dat3 <- tiempo %>% | |
left_join(internet, | |
by = c("Year", | |
"Code")) | |
dat3$region <- countrycode(dat3$Code, | |
origin = "iso3c", | |
destination = "continent") | |
lat2 <- dat3 %>% | |
filter(region == "Americas") %>% | |
na.omit() | |
lat2 <- lat2 %>% | |
group_by(Code) %>% | |
mutate(t_std = scale(tiempo), | |
e_std = scale(inter)) | |
lat2 %>% | |
ggplot() + | |
aes(Year, color = Code) + | |
guides(color = "none") + | |
geom_line(aes(y=t_std, linetype = "Horas trabajo anual\npromedio")) + | |
geom_line(aes(y=e_std, linetype = "% pob escalado")) + | |
facet_wrap(.~Code) + | |
# scale_y_continuous(trans = "log10") + | |
theme(strip.text.x = element_text(size = 14), | |
plot.title = element_text(size = 18), | |
plot.subtitle = element_text(size = 15) , | |
legend.key.size = unit(1.5, 'cm'), | |
legend.text = element_text(size = 12)) + | |
labs(x="", | |
y="Escala en z-score por país", | |
linetype = "", | |
color = "", | |
title = "Relación entre internet y horas de trabajo", | |
subtitle = "Latinoamérica", | |
caption = "Con base a datos del de OWID\n@sientifiko1") | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment