Как добавить метки к гистограмме в ggplot2 (с примером)


Вы можете использовать следующий базовый синтаксис для добавления меток к гистограмме в 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 ))

В этом конкретном примере добавляется белая метка для отображения количества каждого интервала в каждой категории гистограммы.

В следующем примере показано, как использовать этот синтаксис на практике.

Пример: добавление меток к гистограмме в ggplot2.

Предположим, у нас есть следующий кадр данных в R, который содержит информацию об очках, набранных баскетболистами из трех разных команд:

 #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

Мы можем использовать следующий код для создания гистограммы, показывающей очки, набранные игроками каждой команды, с метками, обозначающими счет для каждой ячейки:

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

Метки гистограммы ggplot

Обратите внимание, что у каждого контейнера есть этикетка, на которой указан номер каждого контейнера.

Обратите внимание, что вы можете изменить значения цвета и размера в функции stat_bin() , чтобы изменить цвет и размер меток соответственно.

Например, мы можем использовать следующий синтаксис, чтобы вместо этого использовать черные метки с увеличенным размером шрифта:

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

На этикетках для каждого контейнера теперь используется черный текст и шрифт большего размера.

Не стесняйтесь экспериментировать с аргументами цвета и размера в функции stat_bin() , чтобы метки выглядели так, как вы хотите.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как создать гистограммы по группам в ggplot2
Как отображать проценты на гистограмме в ggplot2
Как установить количество ячеек для гистограммы в ggplot2

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *