Introdução ao ggplot2

ggplot(data = 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 carro (wt)",
    y = "Consumo de combustível (mpg)",
    color = "Cilindros") +
theme_minimal()

Gráficos de Barras

diamonds_cut <- diamonds %>%
  count(cut) %>%
  arrange(desc(n))
ggplot(diamonds_cut, aes(x = reorder(cut, -n), y = n, fill = cut)) +
  geom_bar(stat = "identity") +
  geom_text(aes(label = n), vjust = -0.3, size = 4) +
  labs(title = "Contagem de Diamantes por Tipo de Corte",
    x = "Tipo de Corte",
    y = "Quantidade de Diamantes") +
  scale_fill_brewer(palette = "Spectral") +
theme_minimal() +
theme(legend.position = "none")

Customização Avançada

ggplot(diamonds, aes(x = cut, y = price, fill = cut)) +
  geom_boxplot() +
  labs(
    title = "Distribuição do Preço dos Diamantes por Tipo de Corte",
    x = "Tipo de Corte",
    y = "Preço (USD)") +
  scale_fill_manual(
    values = c(
      "Fair" = "#d73027",
      "Good" = "#fc8d59",
      "Very Good" = "#fee08b",
      "Premium" = "#91bfdb",
      "Ideal" = "#4575b4")) +
  theme_minimal() +
  theme(legend.position = "none", axis.text.x = element_text(angle = 45, hjust = 1))

Conceitos Fundamentais

Diferença entre geom_point() e geom_jitter()

O geom_point() cria um gráfico de dispersão tradicional, no qual cada observação é representada exatamente na sua posição real no plano cartesiano. Ele é mais apropriado quando se deseja preservar a precisão visual dos dados, especialmente para variáveis contínuas.

Já o geom_jitter() é uma variação do geom_point() que adiciona um pequeno deslocamento aleatório aos pontos, com o objetivo de reduzir a sobreposição. Esse geom é mais indicado quando há muitos valores repetidos ou quando se trabalha com variáveis categóricas ou discretas.

Gramática dos Gráficos

A Gramática dos Gráficos é um conceito proposto por Leland Wilkinson que define a construção de gráficos como a combinação sistemática de componentes gráficos independentes, em vez do uso de gráficos pré-definidos.

No ggplot2, esse conceito é implementado por meio da composição de camadas, onde dados, mapeamentos estéticos, geometrias, escalas e temas são combinados para formar visualizações flexíveis e personalizáveis.