Gráfico de dispersão entre Peso (wt) e Consumo
(mpg).
A diferença essencial entre geom_point() e geom_jitter() está na forma como cada um lida com a posição dos pontos e com o problema de sobreposição (overplotting).
O geom_point() representa cada observação exatamente em suas coordenadas originais de x e y, sendo apropriado para dados contínuos, bem distribuídos ou com baixa concentração em pontos específicos. Entretanto, quando diversas observações compartilham a mesma coordenada — situação comum em variáveis categóricas ou discretas — ocorre sobreposição total, ocultando a real densidade dos dados.
Já o geom_jitter() aplica um pequeno deslocamento aleatório controlável (via width e height) às posições dos pontos. Esse espalhamento artificial não altera os valores originais, mas reduz a sobreposição, tornando visível a concentração de observações que estariam empilhadas no mesmo ponto. Por isso, é particularmente útil quando se trabalha com variáveis categóricas ou com dados fortemente discretizados.
Em síntese, geom_point() é preferível quando se deseja precisão posicional, enquanto geom_jitter() é indicado quando o objetivo é revelar densidade e evitar sobreposição.
A Gramática dos Gráficos é um arcabouço conceitual que descreve visualizações como a combinação de componentes fundamentais e independentes: dados, mapeamentos estéticos (aesthetics), geometrias (geoms), transformações estatísticas, escalas, sistemas de coordenadas, facetas e temas. Em vez de tratar cada tipo de gráfico como uma entidade fixa, essa gramática propõe que qualquer visualização pode ser construída a partir da composição sistemática desses elementos.
No ggplot2, essa estrutura é implementada por meio de uma abordagem layered, na qual o usuário inicia com uma especificação básica — tipicamente ggplot(data, aes()) — e adiciona camadas sucessivas usando o operador +. Cada camada pode introduzir novas geometrias, ajustes estatísticos ou modificações estéticas. Assim, instruções como geom_point() ou geom_smooth() tornam-se módulos autônomos que podem ser combinados conforme a necessidade analítica.
Essa modelagem declarativa permite construir gráficos complexos de maneira clara, modular e extensível. Além disso, a ordem das camadas influencia o resultado, permitindo sobreposições, substituições ou complementações visuais. Como consequência, o ggplot2 se torna uma ferramenta flexível que traduz diretamente os princípios da Gramática dos Gráficos em práticas de visualização consistentes e reprodutíveis.