Apresentações Dinâmicas usando a ferramenta Quarto
Quarto
O Quarto é uma extensão específica para o RStudio que oferece recursos adicionais para facilitar a análise e visualização de dados. Ele foi projetado para melhorar a experiência do usuário ao lidar com conjuntos de dados complexos e para simplificar tarefas comuns de análise de dados.
Vantagens do Quarto
Alguns recursos e funcionalidades do Quarto podem incluir:
Visualização Interativa de Dados : O Quarto pode oferecer ferramentas interativas para visualização de dados, permitindo que os usuários explorem seus conjuntos de dados de forma mais dinâmica.
Suporte a Markdown: O Quarto pode integrar-se ao Markdown, uma linguagem de marcação simples, permitindo que os usuários criem relatórios e documentos de análise de dados de forma mais fácil e elegante.
Integração com Bibliotecas e Pacotes R: O Quarto pode se integrar perfeitamente com várias bibliotecas e pacotes R, permitindo que os usuários acessem uma ampla gama de funcionalidades estatísticas e de visualização.
Facilidade de Compartilhamento: Com o Quarto, os usuários podem compartilhar facilmente seus resultados e análises com outras pessoas, seja exportando relatórios ou compartilhando notebooks interativos.
Recursos para Apresentação
O Quarto apresenta várias opções de formatos para criar apresentações. Dentre eles estão:
Para os nossos propósitos, utilizaremos o formato revealjs.
Base de Dados Utilizada
Para a construção de nossos slides utilizaremos a base de dados mtcars. Apresentaremos ela a seguir:
Motor Trend Car Road Tests
Os dados foram extraídos da revista Motor Trend US de 1974 e incluem o consumo de combustível e 10 aspectos da conceção e do desempenho de 32 automóveis.
mpg
cyl
disp
hp
drat
wt
qsec
vs
am
gear
carb
Mazda RX4
21.0
6
160
110
3.90
2.620
16.46
0
1
4
4
Mazda RX4 Wag
21.0
6
160
110
3.90
2.875
17.02
0
1
4
4
Datsun 710
22.8
4
108
93
3.85
2.320
18.61
1
1
4
1
Hornet 4 Drive
21.4
6
258
110
3.08
3.215
19.44
1
0
3
1
Hornet Sportabout
18.7
8
360
175
3.15
3.440
17.02
0
0
3
2
Valiant
18.1
6
225
105
2.76
3.460
20.22
1
0
3
1
Códigos Executáveis
Um código executável é, em geral, um código que é executado pela apresentação. Neste tipo de visualização, o código e o resultado são apresentados no slide.
Para podermos habilitar a apresentação dos códigos, devemos habilitar a vizualização deles na apresentação. Fazemos isto da seguinte forma:
{r, echo = TRUE}
# Linhas de código
Exemplo
library(ggplot2)ggplot(mtcars, aes(hp, mpg, color = am)) +geom_point() +geom_smooth(formula = y ~ x, method ="loess")
Layout em Modo Coluna
Neste tipo de visualização, os componentes do slide são apresentados um ao lado do outro. Para habilitarmos este tipo de visualização, usamos a seguinte estrutura:
::: columns
::: {.column width="x"}
Título da coluna 1
Alguma coisa
:::
::: {.column width="y"}
Título da coluna 2
Alguma coisa
:::
:::
Em geral, podemos ter quantas colunas desejarmos. Mas é preciso ter cuidado para não colocar quantidade desnecessárias de colunas.
Exemplo
Motor Trend Car Road Tests
Os dados foram extraídos da revista Motor Trend US de 1974 e incluem o consumo de combustível e 10 aspectos da conceção e do desempenho de 32 automóveis.
mpg
cyl
disp
hp
wt
Mazda RX4
21.0
6
160
110
2.620
Mazda RX4 Wag
21.0
6
160
110
2.875
Datsun 710
22.8
4
108
93
2.320
Hornet 4 Drive
21.4
6
258
110
3.215
Hornet Sportabout
18.7
8
360
175
3.440
Valiant
18.1
6
225
105
3.460
Tabsets
Tabsets são formas de vizualização baseados em etiquetas. O intuito de um tabset é possibilitar uma vizualização mais aprofundada dos dados sem que haja perda de qualidade das imagens, tabelas e etc.
Um tabset tem a seguinte estrutura:
::: panel-tabset
### Etiqueta 1
Conteúdo
### Etiqueta 2
Conteúdo
:::
Em geral, um tabset pode ter várias etiquetas. Mas é importante salientar que para uma visualização ótima do conteúdo, utilize o menor número possível de etiquetas que puder.
library(ggplot2)ggplot(mtcars, aes(hp, mpg, color = am)) +geom_point() +geom_smooth(formula = y ~ x, method ="loess")
Lista Incrementada
Este tipo de visualização tem como objetivo apresentar listas incrementando elas em várias iterações. Uma lista incrementada é ótima quando se tem a necessidade de obter um maior foco dos ouvintes em cada item listado. Para construir uma lista incrementada, temos a seguinte estrutura:
A estrutura de fragmento pode ser vista como uma extensão da lista incrementada. Ao fragmentar componentes, podemos colocar variadas formas de animação para a aparição dos itens. Para construir um fragmento, temos a seguinte estrutura:
::: {.fragment estillo de animacao}
Texto
:::
Alguns Tipos de Animação
Animação
.fade-in
.fade-up
.fade-left
.fade-in-then-semi-out
.strike
.highlight-red
Exemplos
Fade in
Slide up while fading in
Slide left while fading in
Fade in then semi out
Strike
Highlight red
Ênfase em Códigos
Este tipo de vizualização nos permite dar ênfase em uma ou mais linhas de código. Caso estejamos apresentando algum código mas precisamos focar em um pedaço específico dele, podemos dar ênfase a esse pedaço do código. Para isto, temos a seguinte estrutura:
{.python code-line-numbers="linhas"}
codigo
Seleção de Linhas
Para selecionar as linhas, temos duas formas. A seguir, estão tabeladas ambas as formas:
Neste exemplo, construímos a forma da distribuição t com v graus de liberdade.
Plano de Fundo
Para o plano de fundo, podemos usar cores, imagens e vídeos. Para cores, podemos utilizar todos os formatos de cores aceitos pelo CSS. Em geral, mudamos a cor da seguinte forma: ## titulo da pagina {background="cor"}.
Já para imagens e vídeos, podemos usar os seguintes tipos de configurações:
An image: background-image
A video: background-video
An iframe: background-iframe
na seguinte forma ## titulo da pagina {configuracao="imagem/video"}.
Obs: Considerar gif como imagem.
Exemplo de Cor
Esta página esta com uma cor cinza.
Usamos o código hexadecimal #43464B para alcançar esta cor.
Exemplo de Mídia
Slides Interativos
Quando se tem gráficos ou qualquer outro tipo de vizualização que se pode modificar em tempo real, o slide se torna interativo. Para este caso, não há uma estrutura ou configuração a ser feita. Toda a interatividade é feita nos códigos do R.