Exercício 1.1 - Introdução ao ggplot2

library(ggplot2)

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",
    y = "Milhas por galão",
    color = "Cilindros"
  ) +
  theme_minimal()

Exercício 1.2 – Gráfico de Barras

library(ggplot2)
library(dplyr)

diamonds %>%
  count(cut) %>%
  ggplot(aes(x = reorder(cut, n), y = n)) +
  geom_col(fill = "steelblue") +
  geom_text(aes(label = n), vjust = -0.3) +
  labs(
    title = "Quantidade de Diamantes por Tipo de Corte",
    x = "Tipo de Corte",
    y = "Quantidade"
  ) +
  theme_minimal()

Exercício 1.3 – Boxplot

library(ggplot2)

ggplot(diamonds, aes(x = cut, y = price, fill = cut)) +
  geom_boxplot() +
  labs(
    title = "Distribuição dos Preços dos Diamantes por Tipo de Corte",
    x = "Tipo de Corte",
    y = "Preço (US$)"
  ) +
  theme_minimal() +
  theme(
    legend.position = "none",
    axis.text.x = element_text(angle = 45, hjust = 1)
  )

Exercício 1.4 – Conceitos Fundamentais

Questão 01

Explique a diferença entre geom_point() e geom_jitter(). Em que situação cada um é mais apropriado?

O geom_point() plota os pontos exatamente nas coordenadas observadas, sendo mais indicado quando os dados não apresentam sobreposição significativa.

Já o geom_jitter() adiciona um pequeno deslocamento aleatório aos pontos, sendo recomendado quando há sobreposição (overplotting), especialmente em variáveis categóricas ou discretas, pois melhora a visualização da densidade dos dados.


Questão 02

Descreva o conceito de Gramática dos Gráficos e como ele é implementado no ggplot2.

A Gramática dos Gráficos é um conceito que define que um gráfico é construído a partir da combinação de componentes independentes, tais como:

  • Dados
  • Mapeamentos estéticos
  • Geometrias
  • Escalas
  • Temas

O pacote ggplot2 implementa esse conceito por meio de uma estrutura em camadas, na qual cada elemento do gráfico é adicionado de forma incremental, permitindo a criação de visualizações flexíveis, consistentes e reutilizáveis.