Como reverter a ordem dos eixos no ggplot2 (com exemplos)


Você pode usar as funções scale_y_reverse() e scale_x_reverse() para reverter rapidamente a ordem de um eixo no ggplot2.

Essas funções usam a seguinte sintaxe básica:

 ggplot(df, aes(x, y)) +
  geom_point() +
  scale_y_reverse()

Você também pode usar o argumento de limites com estas funções para especificar novos limites de eixo após inverter o eixo:

 ggplot(df, aes(x, y)) +
  geom_point() +
  scale_y_reverse (limits=c( 100,50 ))

O exemplo a seguir mostra como usar essas funções na prática.

Exemplo: ordem inversa dos eixos em ggplot2

O código a seguir mostra como criar um gráfico de dispersão em ggplot2 com eixo normal:

 library (ggplot2)

#create data frame
df <- data. frame (hours=c(1, 2, 2, 3, 4, 6, 7, 7, 8, 9),
                 score=c(76, 77, 75, 79, 84, 88, 85, 94, 95, 90))

#create scatter plot with normal y-axis
ggplot(df, aes(x=hours, y=score)) +
  geom_point(size= 2 )

Observe que o eixo y atualmente vai de 75 a 95.

O código a seguir mostra como usar a função scale_y_reverse() para inverter a ordem dos valores no eixo y:

 library (ggplot2)

#create data frame
df <- data. frame (hours=c(1, 2, 2, 3, 4, 6, 7, 7, 8, 9),
                 score=c(76, 77, 75, 79, 84, 88, 85, 94, 95, 90))

#create scatter plot with reversed y-axis
ggplot(df, aes(x=hours, y=score)) +
  geom_point(size= 2 ) +
  scale_y_reverse() 

Observe que o eixo y agora vai de 95 para 75.

Também poderíamos usar o argumento limites na função scale_y_reverse() para alterar os limites do eixo y:

 library (ggplot2)

#create data frame
df <- data. frame (hours=c(1, 2, 2, 3, 4, 6, 7, 7, 8, 9),
                 score=c(76, 77, 75, 79, 84, 88, 85, 94, 95, 90))

#create scatter plot with reversed y-axis and modified limits
ggplot(df, aes(x=hours, y=score)) +
  geom_point(size= 2 ) +
  scale_y_reverse (limits=c( 100,50 )) 

Observe que o eixo y agora vai de 100 a 50.

Recursos adicionais

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

Como girar rótulos de eixo no ggplot2
Como definir quebras de eixo no ggplot2
Como definir limites de eixo no ggplot2
Como alterar os rótulos das legendas no ggplot2

Add a Comment

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