Como adicionar rótulos ao histograma no ggplot2 (com exemplo)


Você pode usar a seguinte sintaxe básica para adicionar rótulos a um histograma no ggplot2:

 ggplot(data=df, aes(x=values_var)) + 
  geom_histogram(aes(fill=group_var), binwidth= 1 , color=' black ') +
  stat_bin(binwidth= 1 , geom=' text ', color=' white ', size= 4 ,
           aes(label=..count.., group=group_var), position=position_stack(vjust= 0.5 ))

Este exemplo específico adiciona um rótulo branco para exibir a contagem de cada compartimento em cada categoria de um histograma.

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

Exemplo: Adicionar rótulos ao histograma em ggplot2

Suponha que temos o seguinte quadro de dados em R que contém informações sobre os pontos marcados por jogadores de basquete de três times diferentes:

 #make this example reproducible
set. seeds (1)

#create data frame
df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each=100),
                 points=c(runif(100, 5, 10),
                          runif(100, 5, 10),
                          runif(100, 5, 10)))

#view head of data frame
head(df)

  team points
1 A 6.327543
2 A 6.860619
3 A 7.864267
4 A 9.541039
5 A 6.008410
6 A 9.491948

Podemos usar o código a seguir para criar um histograma que mostre os pontos marcados pelos jogadores de cada equipe com rótulos indicando a contagem de cada caixa:

 library (ggplot2)

#create histogram with labels for each bin
ggplot(data=df, aes(x=points)) + 
  geom_histogram(aes(fill=team), binwidth= 1 , color=' black ') +
  stat_bin(binwidth= 1 , geom=' text ', color=' white ', size= 4 ,
           aes(label=..count.., group=team), position=position_stack(vjust= 0.5 )) 

rótulos de histograma ggplot

Observe que cada compartimento possui uma etiqueta que exibe o número de cada compartimento.

Observe que você pode alterar os valores de cor e tamanho na função stat_bin() para alterar a cor e o tamanho dos rótulos, respectivamente.

Por exemplo, podemos usar a seguinte sintaxe para usar rótulos pretos com tamanho de fonte aumentado:

 library (ggplot2)

#create histogram with labels for each bin
ggplot(data=df, aes(x=points)) + 
  geom_histogram(aes(fill=team), binwidth= 1 , color=' black ') +
  stat_bin(binwidth= 1 , geom=' text ', color=' black ', size= 6 ,
           aes(label=..count.., group=team), position=position_stack(vjust= 0.5 )) 

Os rótulos de cada compartimento agora usam texto em preto e um tamanho de fonte maior.

Sinta-se à vontade para brincar com os argumentos de cor e tamanho na função stat_bin() para fazer os rótulos aparecerem da maneira que você deseja.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como criar histogramas por grupo no ggplot2
Como exibir porcentagens no histograma no ggplot2
Como definir o número de compartimentos para um histograma no ggplot2

Add a Comment

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