Como classificar barras em um gráfico de barras ggplot2


Por padrão, o ggplot2 organiza as barras em um gráfico de barras na seguinte ordem:

  • As variáveis fatoriais são classificadas por níveis de fator.
  • Variáveis de caracteres são listadas em ordem alfabética.

No entanto, muitas vezes você pode estar interessado em encomendar as barras em outra ordem específica.

Este tutorial explica como fazer isso usando o seguinte quadro de dados:

 #create data frame
df <- data. frame (team = c('B', 'B', 'B', 'A', 'A', 'C'),
                 points = c(12, 28, 19, 22, 32, 45),
                 rebounds = c(5, 7, 7, 12, 11, 4))

#view structure of data frame
str(df)

'data.frame': 6 obs. of 3 variables:
 $ team: Factor w/ 3 levels "A","B","C": 2 2 2 1 1 3
 $ points: num 12 28 19 22 32 45
 $rebounds: num 5 7 7 12 11 4

Exemplo 1: Ordene as barras com base em uma ordem de fator específica

Se tentarmos criar um gráfico de barras para exibir a frequência por equipe, as barras aparecerão automaticamente em ordem alfabética:

 library (ggplot2)

ggplot(df, aes(x=team)) +
  geom_bar ()

O código a seguir mostra como classificar as barras em uma ordem específica:

 #specify factor level order
df$team = factor(df$team, levels = c('C', 'A', 'B'))

#create bar chart again 
ggplot(df, aes(x=team)) +
  geom_bar ()

Exemplo 2: Ordenar barras com base no valor numérico

Também podemos classificar as barras com base em valores numéricos. Por exemplo, o código a seguir mostra como ordenar barras da frequência mais alta para a mais baixa usando a função reorder() :

 library (ggplot2)

ggplot(df, aes(x= reorder (team, team, function (x)-length(x)))) +
  geom_bar () 

Ordenar barras no gráfico de barras ggplot2

Também podemos classificar as barras da menor para a maior frequência, removendo o sinal de menos na chamada function() na função reorder() :

 library (ggplot2)

ggplot(df, aes(x= reorder (team, team, function (x) length(x)))) +
  geom_bar () 

Ordene as barras da menor para a maior no gráfico de barras ggplot2

Recursos adicionais

Documentação para a função geom_bar() .
Documentação para a função reorder() .
Uma lista completa de tutoriais R sobre estatísticas.

Add a Comment

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