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 ')
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