Pessoal, espero que estejam ótimos!
Aqui é o lugar onde eu vou fazer as ilustrações para a ERU 487. Com este material eu espero que vocês consigam, em um futuro próximo, fazer as suas próprias ilustrações, análises, etc.
Se o library("nomedopacote")
não funcionar, talvez você
não tenha instalado o pacote ainda. Por isso, talvez você precise
utilizar o install.packages("nomedopacote")
antes. Este
procedimento de instalar algo precisa ser feito apenas uma vez, mas o
carregamento do pacote, library("nomedopacote")
precisa ser
feito toda vez que você abrir o Rstudio.
Por isso, faça isso apenas da PRIMEIRA VEZ QUE ESTIVER USANDO O R:
install.packages("ipeadatar")
install.packages("ggplot2")
install.packages("ggthemes")
install.packages("sidrar")
install.packages("tidyr")
install.packages("tidyverse")
install.packages("wbstats")
install.packages("geobr")
install.packages("sp")
install.packages("sf", dependencies = TRUE)
install.packages("jsonlite")
Já esta parte aqui você precisa fazer TODA VEZ QUE INICIAR UMA NOVA SESSÃO:
library("ipeadatar")
library("ggplot2")
library("ggthemes")
library("sidrar")
library("tidyr")
library("tidyverse")
library("wbstats")
library("geobr")
library("sp")
library("sf")
library("jsonlite")
As bases de dados usadas aqui são públicas e eu não preciso enviá-las para vocês. A gente faz o download delas de três fontes preferencialmente:
IPEADATA com o library("ipeadatar")
Our World in Data com o read.csv combinado com
library("jsonlite")
Dados do IBGE pelo library("sidrar")
Isso facilita a vida porque você não vai se preocupar com criar as bases, nem se a base está separada por vírgulas, por pontos, etc. A parte ruim é que você não vai aprender a lidar com esses problemas básicos logo no início.
Isso vai carregar um objeto chamado as
que tem todas as
séries existentes no Ipeadata. Dá para fazer todas as monografias de
vocês só com este pacote.
as<-available_series(language = c("br"))
O gráfico que eu mostrei na primeira aula.
th1<-ipeadata("THOMIC", language = c("br"), quiet = FALSE)
## Warning: There was 1 warning in `dplyr::mutate()`.
## ℹ In argument: `TERCODIGO = as.integer(.data$TERCODIGO)`.
## Caused by warning:
## ! NAs introduzidos por coerção
th2<-ipeadata("THOMICJ", language = c("br"), quiet = FALSE)
## Warning: There was 1 warning in `dplyr::mutate()`.
## ℹ In argument: `TERCODIGO = as.integer(.data$TERCODIGO)`.
## Caused by warning:
## ! NAs introduzidos por coerção
i1<-th1 %>% filter(uname=="Brasil")
i2<-th2 %>% filter(uname=="Brasil")
i1 <- i1 %>% mutate(th_total = value)
i2 <- i2 %>% mutate(th_jovem = value)
th3 <- merge(i1, i2, by="date") %>% select(date, th_jovem, th_total)
th3$ano <- as.numeric(substr(th3$date, 1, 4))
ggplot(th3, aes(x = ano)) +
geom_line(aes(y = th_total, color = "Total", linetype = "Total"), size = 1) +
geom_point(aes(y = th_total, color = "Total"), size = 2) +
geom_line(aes(y = th_jovem, color = "Jovem (15-29)", linetype = "Jovem (15-29)"), size = 1) +
geom_point(aes(y = th_jovem, color = "Jovem (15-29)"), size = 2) +
scale_color_manual(values = c("Total" = "gray20", "Jovem (15-29)" = "darkorange")) +
scale_linetype_manual(values = c("Total" = "solid", "Jovem (15-29)" = "dotted")) +
labs(x = "", y = "Taxa de homicídios (mortes/100mil)", color = "", linetype = "") +
theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
A gente pode fazer algum outro agora…
Soja, Cana?
#QUANTPRODSOJA
# Fetch the data
expectativadevida <- read.csv("https://ourworldindata.org/grapher/life-expectancy.csv?v=1&csvType=full&useColumnShortNames=true")
# Fetch the metadata
metadata <- fromJSON("https://ourworldindata.org/grapher/life-expectancy.metadata.json?v=1&csvType=full&useColumnShortNames=true")
save(expectativadevida, file="expectativadevida.Rda")
load("expectativadevida.Rda")
df_filtered <-expectativadevida %>%
filter(Entity %in% c("World", "Brazil", "United States", "France", "Germany", "Canada", "Argentina")) %>%
filter(Year>1900)
# Criar o gráfico
l3 <- ggplot(df_filtered, aes(x = Year, y = life_expectancy_0__sex_total__age_0, color = Entity)) +
geom_line() +
geom_point(size = 1)+
labs(title = "",
x = "",
y = "Expectativa de Vida ao Nascer",
color = "") +
theme_minimal()
l3
A gente pode fazer algum outro agora… ao vivo, basta ir no Ourworldindata
O Sidrar funciona da mesma forma do IPEADATAR, basta você saber o código da série (mostrar na sala).
#https://apisidra.ibge.gov.br/values/t/1612/n1/all/v/214/p/all/c81/2696
cana =
'/t/1612/n1/all/v/214/p/all/c81/2696' %>%
get_sidra(api=.)
## All others arguments are desconsidered when 'api' is informed
ggplot(cana, aes(x=Ano, y=Valor)) + geom_line( ) + geom_point()
## `geom_line()`: Each group consists of only one observation.
## ℹ Do you need to adjust the group aesthetic?
ggplot(cana, aes(x=as.numeric(Ano), y=as.numeric(Valor) / 1e6)) +
geom_line(color="darkblue") +
geom_point(color="darkred") +
theme_minimal() +
labs(x="", y="Valor (mi, ton)", title="Cana")