O presente relatório técnico tem como finalidade consolidar as atividades práticas de análise estatística e visualização de dados, utilizando a linguagem de programação R. O foco principal desta análise reside na gestão e no desempenho de frotas, explorando a correlação entre variáveis técnicas e a distribuição de frequências em conjuntos de dados complexos.
Para a execução desta tarefa, foram empregadas as ferramentas de
ponta da ciência de dados: * ggplot2:
Implementação da “Gramática dos Gráficos” para criar visualizações
precisas e informativas. * dplyr:
Ferramenta essencial para a manipulação, filtragem e organização de
grandes volumes de dados.
O objetivo fundamental é demonstrar como a ciência de dados pode ser aplicada para transformar dados brutos em inteligência logística, facilitando a interpretação de indicadores de desempenho e a identificação de padrões de consumo e precificação.
library(ggplot2)
# Gerando gráfico de dispersão: Peso vs Consumo
ggplot(data = mtcars, aes(x = wt, y = mpg)) +
geom_point(aes(color = factor(cyl)), size = 3) +
labs(
title = "Relação entre Peso e Consumo",
x = "Peso (1000 lbs)",
y = "Consumo (mpg)",
color = "Cilindros"
) +
theme_minimal()
library(ggplot2)
library(dplyr)
##
## Anexando pacote: 'dplyr'
## Os seguintes objetos são mascarados por 'package:stats':
##
## filter, lag
## Os seguintes objetos são mascarados por 'package:base':
##
## intersect, setdiff, setequal, union
# Preparando os dados e gerando gráfico de barras
diamonds %>%
count(cut) %>%
ggplot(aes(x = reorder(cut, -n), y = n, fill = cut)) +
geom_col() +
geom_text(aes(label = n), vjust = -0.5) +
scale_fill_brewer(palette = "RdYlBu") +
labs(
title = "Contagem por Qualidade de Corte",
x = "Corte",
y = "Quantidade",
fill = "Corte"
) +
theme_minimal()
Nesta análise, observamos a variação de preço para cada tipo de corte de diamante.
library(ggplot2)
# Criando o Boxplot com customizações solicitadas
ggplot(diamonds, aes(x = cut, y = price, fill = cut)) +
geom_boxplot() +
# (a) Títulos e rótulos em português
labs(
title = "Variação de Preço por Qualidade de Corte",
subtitle = "Análise estatística de dispersão de valores",
x = "Qualidade do Corte",
y = "Preço (US$)"
) +
# (b) Cores customizadas (Manual)
scale_fill_manual(values = c("Fair" = "#F8766D", "Good" = "#A3A500",
"Very Good" = "#00BF7D", "Premium" = "#00B0F6",
"Ideal" = "#E76BF3")) +
# (c) Remoção da legenda e (d) Ajuste do ângulo dos rótulos do eixo X
theme_minimal() +
theme(
legend.position = "none", # Remove a legenda
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1) # Inclina em 45°
)
geom_point() e geom_jitter()geom_point(): É o comando padrão para
gráficos de dispersão. Ele coloca os pontos exatamente nas coordenadas
(X, Y) fornecidas pelos dados. É ideal para variáveis contínuas e
precisas.geom_jitter(): Adiciona uma pequena
quantidade de “ruído” aleatório à posição dos pontos.geom_point() quando a precisão
for fundamental e não houver muitos pontos sobrepostos.geom_jitter() quando houver
muitos dados com valores repetidos (overplotting). Sem
o jitter, os pontos ficariam uns sobre os outros, parecendo haver apenas
um dado onde existem centenas. O jitter “espalha” os pontos para mostrar
a densidade real daquela categoria.A Gramática dos Gráficos (proposta por Leland Wilkinson) defende que um gráfico não é uma imagem única, mas sim uma sobreposição de camadas independentes.
No ggplot2, essa gramática é
implementada através do operador +,
permitindo construir a visualização passo a passo:
mtcars).aes): O
mapeamento de quais colunas vão para o eixo X, Y, cores ou
tamanhos.Essa abordagem modular torna o R uma ferramenta poderosa, pois você
pode mudar o tipo de gráfico apenas alterando a camada de
geom, mantendo todo o resto da estrutura.