knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  echo=FALSE, 
  warning=FALSE, 
  message=FALSE, 
  fig.height=8, 
  fig.width=10
)
library(covid19br)
library(tidyverse)
library(covid19br)
library(geobr)
library(cowplot)
library(knitr)
library(DT)
library(ggrepel)

# Data for comparisons:
used_date  <- max(covid_br$date)

n_sus      <- covid_br %>% filter(date == used_date) %>% pull(suspected_cases)
n_des      <- covid_br %>% filter(date == used_date) %>% pull(not_confirmed_cases)
n_total    <- covid_br %>% filter(date == used_date) %>% pull(confirmed_cases)
n_death    <- covid_br %>% filter(date == used_date) %>% pull(deaths)


# raw data
tab_stat <- covid_states %>% filter(date == used_date) %>% 
  dplyr::select(Estado = state, "Casos suspeitos" = suspected_cases, 
         "Casos confirmados" = confirmed_cases,
         "Casos descartados" = not_confirmed_cases) %>% 
  arrange(Estado) %>% as.data.frame()

NOTAS:
As análises abaixo representam apenas o número de casos confirmados pelo Ministério da Saúde, portanto, não se pode concluir uma relação direta destes números com o número real de pessoas infectadas por covid-19.
Os resultados apresentados abaixo foram atualizados na data: r used_date

Síntese dos dados oficiais

Casos confirmados de covid-19 no Brasil

library(covid19br)

# calculate doubling time:
mod10    <- lm(log10(confirmed_cases + 1) ~ date, covid_br)
modlog   <- lm(log(confirmed_cases + 1) ~ date, covid_br)
dtime    <- log(2)/modlog$coef[2]   # time to double
dtime10  <- 1/mod10$coef[2]         # time to x 10

# Plots------
# Curva de crescimento no Brasil
g2 <- ggplot(covid_br, aes(y = confirmed_cases, x = date, label = confirmed_cases)) +
  geom_area(fill = "tomato", alpha = 0.2) +
  geom_line(color = "tomato", size = 3) +
  geom_label() +
  scale_x_date(date_breaks = "3 days", date_labels =  "%d %b") +
  geom_segment(aes(x = as.Date("2020-02-26"), y = 150, xend = as.Date ("2020-02-26"), yend = 5),
               arrow = arrow(type =  "closed", length = unit(0.3, "cm"))) +
  annotate(geom='text', x = as.Date("2020-02-26"), y = 160,
           label = "Primeiro caso registrado (26 of Feb - 2020)", hjust =  0, size = 7) +
  theme_cowplot(font_size = 20) +
  labs(y = "Casos confirmados de covid-19",
       x = "Date",
       title = "covid-19",
       subtitle = ("O número de casos cresce exponencialmente"),
       caption = paste("Source: Ministério da Saúde | updated", used_date)) +
     theme( 
    plot.title = element_text(size = 22),
  plot.subtitle = element_text(size = 18),
  plot.caption = element_text(size = 12, hjust = 1)) ;g2

Taxa de crescimento do número de casos

# Tempo para dobrar o número de casos
g3 <- ggplot(covid_br, aes(y = confirmed_cases + 1, x = date)) +
  geom_point(color = "black", size = 5, shape = 21, fill = "tomato", alpha = .75) +
  scale_y_continuous(trans = "log10") +
  geom_smooth(method = lm, color = "tomato") +
scale_x_date(date_breaks = "3 days", date_labels =  "%d %b") +
  theme_cowplot(font_size = 20) +
  labs(y = "Casos confirmados de covid-19 [log10]",
       x = "Date",
       title = "covid-19",
       subtitle = paste("A cada ", round(dtime10, 1), "dias o número de casos aumenta 10 vezes!"),
       caption = paste("Source: Ministério da Saúde | updated", used_date)) +
    theme( 
    plot.title = element_text(size = 22),
  plot.subtitle = element_text(size = 18),
  plot.caption = element_text(size = 12, hjust = 1)) ;g3

Número de casos por estado

covid_states %>% filter(date == used_date) %>% 
  arrange(desc(confirmed_cases)) %>% 
  ungroup() %>% 
  slice(1:5) %>% 
  pull(state) %>% as.character() -> top_state

ggplot() +
  geom_line(data = covid_states  %>% filter(state %in% top_state), 
            aes(y = confirmed_cases, x = date, color = state), size = 1.5, alpha = .75) +
  geom_point(data = covid_states  %>% filter(state %in% top_state & date == used_date), 
             aes(y = confirmed_cases, x = date, color = state), size = 4, alpha = .75) +
  theme_cowplot(font_size = 20) +
  scale_color_viridis_d(name = "", option = "D", direction = -1) +
  labs(y = "Casos confirmados (covid-19)",
       x = "Data",
       title = "covid-19 | Brasil",
       subtitle = "Crescimento do número de casos por estado") +
  theme(legend.position = NULL) 

# Compare between states
ggplot(covid_states %>% filter(date == used_date), 
       aes(y = confirmed_cases, x = reorder(state, confirmed_cases), label = confirmed_cases)) +
  geom_col(fill = "tomato", color = "red", alpha  = .3, size = 0.5) +
  geom_label() +
  coord_flip() +
  theme_cowplot(font_size = 20) +
  labs(y = "Casos conirmados de covid-19",
       x = "")

Raw data

tab_stat %>% 
  datatable(rownames = FALSE, options = list(pageLength = 30))


paternogbc/covid19br documentation built on March 17, 2021, 5:57 p.m.