climas = read_csv(here::here("data/clima_cg_jp-semanal.csv"),
col_types = "cTdddddd")
glimpse(climas)
## Rows: 2,748
## Columns: 8
## $ cidade <chr> "Campina Grande", "Campina Grande", "Campina Grande", "Campina…
## $ semana <dttm> 1992-12-27, 1993-01-03, 1993-01-10, 1993-01-31, 1993-02-07, 1…
## $ tmedia <dbl> 26.133, 26.119, 25.767, 25.740, 26.314, 26.286, 26.471, 26.567…
## $ tmax <dbl> 30.4, 32.4, 32.2, 32.0, 32.7, 32.7, 32.3, 32.3, 32.1, 31.2, 32…
## $ tmin <dbl> 20.7, 19.3, 19.7, 19.9, 19.6, 20.0, 20.4, 21.2, 19.0, 19.0, 19…
## $ chuva <dbl> 0.0, 0.0, 0.0, 0.4, 0.3, 0.0, 4.9, 0.0, 0.0, 6.1, 0.4, 1.2, 0.…
## $ mes <dbl> 12, 1, 1, 1, 2, 2, 2, 2, 10, 11, 11, 11, 11, 12, 12, 12, 12, 1…
## $ ano <dbl> 1992, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 19…
Primeiro vamos tentar observar, separadamente, a distribuição das médias de temperatura para cada cidade no gráfico abaixo:
plot_all <- ggplot(data = climas)+ geom_point(aes(x = semana, y = tmedia))
plot_all + facet_grid(. ~ cidade)
A partir da distribuição das temperatura médias das semanas através dos anos, podemos observar que na cidade de João Pessoa a média mínima registrada está acima de 22.5 graus e a grande maioria de registros está sempre acima de 25 graus. Ainda sobre JP Conseguimos observar também uma grande concentração próximo a 27.5 graus. Por outro lado, em Campina Grande quase todas as médias estão abaixo de 27.5 graus. Enquanto Campina sequer atinge uma média de 30 graus, João Pessoa possui alguns pontos que até ultrapassam esse valor.
mean(climas %>% filter(climas$cidade == "Campina Grande") %>% pull(tmedia))
## [1] 24.691
mean(climas %>% filter(climas$cidade == "João Pessoa") %>% pull(tmedia))
## [1] 27.653
Até agora vimos que Campina Grande pode ser considerada mais fria que João Pessoa, com uma diferença de temperaturas médias de mais ou menos 3 graus. Faremos agora a mesma comparação, mas agora usando as temperaturas máximas.
ggplot(climas, aes(x=climas$cidade, y=climas$tmax)) + geom_boxplot()
mean(climas %>% filter(climas$cidade == "Campina Grande") %>% pull(tmax))
## [1] 30.317
mean(climas %>% filter(climas$cidade == "João Pessoa") %>% pull(tmax))
## [1] 30.673
Quando comparamos novamente as duas cidades, agora olhando para temperatura máxima não há tanta diferença. Vemos que as medianas de temperatura máxima são bem similares, assim como as médias (30.317 para Campina Grande e 30.673 para João Pessoa).
media_mes <- climas %>%
group_by(mes) %>%
summarise(temp_media_max = max(tmedia))
nomes <- c("jan", "fev","mar","abr", "mai" ,"jun","jul", "ago","set","out","nov","dez")
ggplot(media_mes)+aes(y=mes,x= temp_media_max)+geom_col() + geom_text(label=nomes)
Apesar de não existir uma variação muito grande nas temperaturas médias. Os meses fevereiro e março são os mais quentes, enquanto que julho e agosto são oes mais frios.
Para tentar visualizar qual foi o São João mais frio de CG, primeiro filtramos os dados para obsevar apenas o mês 6. Depois, agrupamos por ano e faremos a média de todas as semana do mês de junho para cada ano.
medias_junho <- climas %>% filter(mes == 6) %>% group_by(ano) %>% summarise(media_mes_junho = mean(tmedia))
ggplot(medias_junho, aes(x=ano, y=media_mes_junho)) +
geom_point(size=3) +
scale_x_continuous(n.breaks = 16)+
geom_segment(aes(x=ano,
xend=ano,
y=min(media_mes_junho),
yend=max(media_mes_junho)),
size=0.3) +
labs(title="Ano x Temperatura média de junho", x="Ano", y="Temperatura Média") +
theme(axis.text.x = element_text(angle=65, vjust=0.6))
Através dos anos visualizamos a temperatura média do mês de junho e a menor delas foi a registrada no ano de 2004. Portanto, o São João mais frio de Campina, até hoje, foi em 2004 quando a temperatura média do mês foi de mais ou menos 24 graus.
ggplot(climas, aes(climas$semana, climas$chuva)) + geom_jitter(width = .5, size=1) +
labs(title="Distribuição das chuvas nas semanas",
y="chuva",
x="semanas") + facet_grid(. ~ cidade)
Para representar a distribuição do volume de chuvas, um gráfico de densidade é mostrado abaixo. Onde podemos observar a alta probabilidade de níveis baixíssimos de chuva em CG. Já para João Pessoa, a varição é menos extrema, mas a probabilidade mais chuva também é maior.
g <- ggplot(climas, aes(climas$chuva))
g + geom_density(aes(fill=climas$cidade), alpha=0.8) +
labs(title="Densidade de probabilidade de chuvas", x="Nível de chuvas")
g <- ggplot(climas, aes(climas$tmedia))
g + geom_density(aes(fill=climas$cidade), alpha=0.8) +
labs(title="Densidade de probabilidade da temperatura", x="Nível de chuvas")
Pelo primeiro gráfico de densidade é possível observar uma maior probabilidade de níveis mais altos de chuva na curva azul, que representa João Pessoa.
climas %>% group_by(cidade, mes) %>% summarise(media_chuva = mean(chuva))
## # A tibble: 24 x 3
## # Groups: cidade [2]
## cidade mes media_chuva
## <chr> <dbl> <dbl>
## 1 Campina Grande 1 10.1
## 2 Campina Grande 2 17.6
## 3 Campina Grande 3 16.7
## 4 Campina Grande 4 23.1
## 5 Campina Grande 5 23.0
## 6 Campina Grande 6 28.2
## 7 Campina Grande 7 23.3
## 8 Campina Grande 8 13.0
## 9 Campina Grande 9 5.00
## 10 Campina Grande 10 3.19
## # … with 14 more rows