class: center, middle, inverse, title-slide .title[ # Análise Dinâmica do Brasileirão ] .subtitle[ ## Uma Aplicação do Pacote
gganimate
] .author[ ### Miguel dos Anjos Brack ] .institute[ ### UTFPR - Universidade Tecnológica Federal do Paraná ] .date[ ### 26/06/2025 ] --- # Roteiro da Apresentação 1. **Introdução:** Por que R e por que visualizar dados? 2. **O Pacote `gganimate`:** A Gramática da Animação. 3. **Metodologia:** Do dado bruto à análise. 4. **Resultados em Foco:** * Animação A: A Disputa pelo Título de 2020. * Animação B: A Corrida dos Campeões. * Animação C: A Campanha do Athletico-PR em 2017. 5. **Conclusões e Aprendizados.** --- # 1. Introdução: O Poder do R O **R** é uma das linguagens de programação mais influentes na área de **ciência de dados e estatística**. ### Vantagens: - **Ecossistema:** Milhares de pacotes (`tidyverse`, `shiny`, etc.). - **Comunidade:** Ativa e colaborativa. - **Visualização:** Capacidade gráfica robusta, com pacotes como o `ggplot2`. - **Reprodutibilidade:** Facilita a criação de relatórios e análises que podem ser facilmente verificados e atualizados. --- # 2. O Pacote `gganimate` `gganimate` estende a "gramática dos gráficos" do `ggplot2` para o domínio da **animação**. ### A ideia principal: > Em vez de criar gráficos estáticos, criamos narrativas visuais que mostram a **evolução** dos dados. ### Principais Funções Adicionadas: - `transition_*()`: Define **como** os dados mudam (ex: `transition_reveal`, `transition_time`). - `view_*()`: Controla a "câmera" da animação. - `shadow_*()`: Cria "rastros" ou "fantasmas" para dar senso de movimento. --- # 3. Metodologia O processo seguiu três etapas principais: .pull-left[ ### 1. Coleta e Carga - Utilizamos dois datasets públicos do Kaggle sobre o Campeonato Brasileiro. - `partidas_raw <- read_csv(...)` - `estatisticas_raw <- read_csv2(...)` ### 2. Limpeza e Transformação - A etapa mais desafiadora. - Conversão de datas e placares. - Criação da variável `temporada`. - Cálculo de pontos e reestruturação dos dados (pivotagem). ### 3. Visualização - Aplicação das funções do ggplot2 para a base do gráfico. - Adição das camadas do gganimate para a animação. - Renderização dos GIFs com `animate()`. ] .pull-right[ #### Exemplo de Código (Limpeza): ``` r dados_pontos <- partidas_raw %>% rename( # Renomeia colunas gols_casa = `Mandante Placar` ) %>% mutate( # Cria/modifica colunas data_real = as.Date(data_str), pontos_casa = case_when( gols_casa > gols_fora ~ 3, gols_casa == gols_fora ~ 1, TRUE ~ 0 ) ) %>% filter(!is.na(data_real)) # Remove linhas inválidas ``` ] --- class: center, middle ## Animação A: A Disputa pelo Título de 2020 <div class="figure" style="text-align: center"> <img src="https://i.imgur.com/lTxJBfa.gif" alt="Pontos acumulados dos 4 primeiros colocados do Brasileirão 2020, rodada a rodada." /> <p class="caption">Pontos acumulados dos 4 primeiros colocados do Brasileirão 2020, rodada a rodada.</p> </div> ### **Técnica:** `transition_reveal()` para "desenhar" a linha do tempo. --- ## Animação B: A Corrida dos Campeões <div class="figure" style="text-align: center"> <img src="https://i.imgur.com/c2B7kDG.gif" alt="Acúmulo de títulos na era dos pontos corridos (2003-2021)." /> <p class="caption">Acúmulo de títulos na era dos pontos corridos (2003-2021).</p> </div> ### **Técnica:** `transition_time()` para animar através das temporadas. --- ## Animação C: A Campanha do Athletico-PR em 2017 <div class="figure" style="text-align: center"> <img src="https://i.imgur.com/zduK92M.gif" alt="Evolução da posição do Athletico-PR na tabela durante o Brasileirão de 2017." /> <p class="caption">Evolução da posição do Athletico-PR na tabela durante o Brasileirão de 2017.</p> </div> ### **Técnica:** `transition_reveal()` aplicada a uma análise de `rank()`. --- # 5. Conclusões e Aprendizados ### Sobre o `gganimate` - **Ferramenta poderosa** e intuitiva para quem já usa `ggplot2`. - Transforma dados em **narrativas visuais** convincentes. - **Flexível**, permitindo a criação de diversos tipos de animação. ### Aprendizados do Projeto - **A limpeza de dados é 80% do trabalho.** Lidar com dados inconsistentes foi o maior desafio. - **"Conheça seus dados".** O principal erro foi resolvido ao descobrirmos problemas causados pela pandemia. - A visualização é uma ferramenta poderosa não só para apresentar, mas também para **explorar e entender** os próprios dados.