Como alterar os rótulos dos eixos facetados no ggplot2


Você pode usar a função as_labeller() para alterar os rótulos dos eixos das facetas no ggplot2:

 ggplot(df, aes(x, y)) + 
  geom_point() +
  facet_wrap(.~group,
             strip. position = ' left ', 
             labeller = as_labeller(c(A=' new1 ', B=' new2 ', C=' new3 ', D=' new4 '))) +
  ylab(NULL) +
  theme(strip. background = element_blank(),
        strip. placement ='outside')

Este exemplo específico substitui os seguintes rótulos antigos:

  • ABCD

com os seguintes novos rótulos:

  • novo1, novo2, novo3, novo4

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: Editar rótulos de eixo de faceta em ggplot2

Suponha que temos o seguinte quadro de dados em R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C', 'D', 'D'),
                 points=c(8, 14, 20, 22, 25, 29, 30, 31),
                 assists=c(10, 5, 5, 3, 8, 6, 9, 12))

#view data frame
df

  team points assists
1 to 8 10
2 to 14 5
3 B 20 5
4 B 22 3
5 C 25 8
6 C 29 6
7 D 30 9
8 D 31 12

O código a seguir mostra como usar facet_wrap() para criar uma grade que exibe um gráfico de dispersão de assistências versus pontos para cada equipe:

 library (ggplot2)

#create multiple scatter plots using facet_wrap
ggplot(df, aes (assists, points)) +
  geom_point() +
  facet_wrap(.~team, nrow= 4 )

Atualmente, as facetas possuem os seguintes rótulos: A, B, C, D.

No entanto, podemos usar o seguinte código para alterar os rótulos para Equipe A, Equipe B, Equipe C e Equipe D:

 library (ggplot2)

#create multiple scatter plots using facet_wrap with custom facet labels
ggplot(df, aes(assists, points)) + 
  geom_point() +
  facet_wrap(.~team, nrow= 4 ,
             strip. position = ' left ', 
             labeller = as_labeller(c(A=' team A ',
                                      B=' team B ',
                                      C=' team C ',
                                      D=' team D '))) +
  ylab(NULL) +
  theme(strip. background = element_blank(),
        strip. placement = ' outside ')

ggplot2 altera rótulos de eixo de faceta

Observe que os rótulos das facetas foram alterados para Equipe A, Equipe B, Equipe C e Equipe D e foram movidos para o lado esquerdo do gráfico.

Nota : O argumento strip.background remove o fundo cinza atrás dos rótulos de faceta, e o argumento strip.placement especifica que os rótulos devem ser colocados fora das marcas de escala do eixo.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns no ggplot2:

Como alterar a ordem das facetas no ggplot2
Como alterar o tamanho da fonte no ggplot2
Como girar rótulos de eixo no ggplot2

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *