Pular para o conteúdo principal
Módulo 5 · Lição 2 de 210/10 no curso~15 min
Lições do módulo (2/2)

Personalização e facetas

Além de definir geometrias e estética, ggplot2 permite personalizar completamente a aparência visual de um gráfico adicionando títulos, modificando temas e facetando (dividindo gráficos em subpainéis).


Títulos e rótulos: labs()

Para adicionar um título principal, legendas e personalizar rótulos de eixo ou títulos de legenda, adicionamos a camada labs():

R
ggplot(df, aes(x = age, y = income)) +
  geom_point() +
  labs(
    title = "Income by Age",
    subtitle = "2026 census data",
    x = "Age (years)",
    y = "Annual Income (EUR)",
    color = "Gender"
  )

Temas visuais: theme_*()

ggplot2 inclui vários temas pré-empacotados que alteram planos de fundo, linhas de grade e tipografia. Alguns dos mais comuns são:

  • theme_gray() (o tema padrão com fundo cinza claro).
  • theme_minimal() (um fundo branco limpo com linhas de grade finas).
  • theme_classic() (um estilo clássico simples, sem linhas de grade de fundo).
R
ggplot(df, aes(x = age, y = income)) +
  geom_point() +
  theme_minimal()  # Applies a clean, modern style

Divisão de gráficos em subpainéis: facet_wrap()

Faceting permite dividir um único gráfico em vários subparcelas (painéis) lado a lado com base no valor de uma variável categórica.

A função primária é facet_wrap() e usa notação de fórmula R (~ variable_name):

R
# Creates a separate subplot for each department
ggplot(df, aes(x = age, y = income)) +
  geom_point() +
  facet_wrap(~ department)

Experimente você mesmo

Exercício 1: Adicione títulos e eixos

Exercício#r.m5.l2.e1
Tentativas: 0Carregando…

Dado o gráfico de dispersão, adicione uma camada labs() definindo o título (título) como 'Título', o rótulo do eixo x como 'Idade' e o rótulo do eixo y como 'Renda'.

Carregando editor…
Mostrar dica

Use labs(title = 'Title', x = 'Age', y = 'Income') concatenando-o com '+'.

Solução disponível após 3 tentativas

Exercício 2: Aplique um tema limpo

Exercício#r.m5.l2.e2
Tentativas: 0Carregando…

Aplique o tema gráfico theme_minimal() ao gráfico de dispersão abaixo para melhorar sua estética visual.

Carregando editor…
Mostrar dica

Use o sinal '+' e adicione a função theme_minimal().

Solução disponível após 3 tentativas

Exercício 3: Divida o gráfico com facet_wrap

Exercício#r.m5.l2.e3
Tentativas: 0Carregando…

Use a função facet_wrap() para dividir o gráfico de dispersão em diferentes painéis com base na coluna do departamento.

Carregando editor…
Mostrar dica

Use facet_wrap(~ Department) para dividir o gráfico.

Solução disponível após 3 tentativas

Exercício 4: Inverter eixos coordenados

Exercício#r.m5.l2.e4
Tentativas: 0Carregando…

Para tornar um gráfico de colunas com muitas categorias legível, você pode inverter os eixos xey. Adicione a camada coord_flip() ao gráfico de barras.

Carregando editor…
Mostrar dica

Use coord_flip() legando o pipeline ggplot com '+'.

Solução disponível após 3 tentativas

Exercício 5: Gráfico completo pronto para publicação

Exercício#r.m5.l2.e5
Tentativas: 0Carregando…

Crie um gráfico completo em df: mapeie idade para x, renda para y e cor para gênero dentro de geom_point(). Divida o gráfico usando facet_wrap() por departamento, adicione labs() com o título 'Salário por Idade' e, finalmente, aplique theme_minimal().

Carregando editor…
Mostrar dica

Combine todas as camadas usando '+': ggplot(...) + geom_point() + facet_wrap(~ Department) + labs(title = 'Salary by Age') + theme_minimal()

Solução disponível após 3 tentativas