Discente: Otávio Diego da Silva
Data:
16/12/2025
O gráfico a seguir apresenta a relação entre o peso do veículo (wt) e o consumo de combustível (mpg), utilizando o dataset mtcars. A cor diferencia os veículos pelo número de cilindros.
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
data(mtcars)
ggplot(mtcars, aes(x = wt, y = mpg, color = factor(cyl))) +
geom_point(size = 3) +
labs(
title = "Relação entre Peso e Consumo de Combustível",
x = "Peso do veículo (wt)",
y = "Milhas por galão (mpg)",
color = "Cilindros"
) +
theme_minimal()
O gráfico a seguir apresenta a contagem de diamantes por tipo de
corte (cut), utilizando o dataset diamonds.
Em seguida, o gráfico é modificado para:
(a) ordenar as barras em ordem decrescente
(b) adicionar rótulos de valor
(c) aplicar uma paleta de cores divergente
library(ggplot2)
library(dplyr)
data(diamonds)
df_cut <- diamonds %>%
count(cut) %>%
arrange(desc(n))
ggplot(df_cut, aes(x = reorder(cut, -n), y = n, fill = cut)) +
geom_bar(stat = "identity") +
geom_text(aes(label = n), vjust = -0.3, size = 4) +
scale_fill_brewer(palette = "Spectral") +
labs(
title = "Contagem de Diamantes por Tipo de Corte",
x = "Tipo de Corte",
y = "Quantidade"
) +
theme_minimal()
Objetivos: (a) Criar boxplot da variável price por tipo de corte (cut) (b) Personalizar rótulos e títulos em português (c) Aplicar cores específicas para cada categoria de corte (d) Remover legenda (opcional, conforme solicitado) (e) Ajustar ângulo dos rótulos do eixo X Definição das cores personalizadas para cada nível de “cut”
library(ggplot2)
library(dplyr)
cores <- c(
"Fair" = "#1b9e77",
"Good" = "#d95f02",
"Very Good" = "#7570b3",
"Premium" = "#e7298a",
"Ideal" = "#66a61e"
)
# Construção do boxplot
ggplot(diamonds, aes(x = cut, y = price, fill = cut)) +
geom_boxplot() +
scale_fill_manual(values = cores) +
labs(
title = "Distribuição dos Preços por Tipo de Corte",
x = "Tipo de Corte",
y = "Preço (USD)"
) +
theme_minimal() +
theme(
axis.text.x = element_text(angle = 35, hjust = 1),
legend.position = "none" # remoção da legenda
)
O jitter não modifica os dados, apenas desloca visualmente os pontos para facilitar a interpretação.
A Gramática dos Gráficos, proposta por Leland Wilkinson (1999), define que um gráfico é construído a partir da combinação de componentes fundamentais:
O pacote ggplot2 implementa essa gramática por meio de camadas (layers), permitindo criar gráficos modulares, organizados e reprodutíveis.
Dessa forma, cada visualização no ggplot2 é a soma estruturada desses elementos.
A realização dos exercícios permitiu consolidar os principais fundamentos da visualização de dados utilizando o ecossistema R, especialmente por meio da biblioteca ggplot2. Cada atividade reforçou a importância de compreender a lógica da Grammar of Graphics, que possibilita construir gráficos de forma estruturada, interpretável e reprodutível.
Ao trabalhar com diferentes tipos de visualizações — dispersão, barras e boxplots — foi possível perceber como escolhas estéticas, mapeamentos, escalas e temas influenciam diretamente a clareza e a precisão da comunicação visual. Além disso, a personalização dos gráficos demonstrou o papel essencial da visualização na análise exploratória, permitindo identificar padrões, distribuições, tendências e variações que não seriam facilmente perceptíveis apenas por tabelas numéricas.
Dessa forma, o conjunto das práticas realizadas contribuiu para o desenvolvimento de habilidades fundamentais no contexto da Ciência de Dados, aprimorando a capacidade de transformar dados brutos em informações visuais significativas, mais acessíveis e úteis para processos decisórios.