Как создать составную гистограмму в r (с примерами)


Столбчатая диаграмма с накоплением — это тип диаграммы, на которой отображаются количества различных переменных, сложенных по другой переменной.

В этом руководстве объясняется, как создавать составные гистограммы в R с помощью библиотеки визуализации данных ggplot2 .

Барплот, сложенный в ggplot2

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

 #create data frame
df <- data.frame(team= rep (c(' A ', ' B ', ' C '), each =3),
                 position= rep (c(' Guard ', ' Forward ', ' Center '), times =3),
                 dots=c(14, 8, 8, 16, 3, 7, 17, 22, 26))

#view data frame
df

  team position points
1 A Guard 14
2 A Forward 8
3 A Center 8
4 B Guard 16
5 B Forward 3
6 B Center 7
7 C Guard 17
8 C Forward 22
9C Center 26

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

 library (ggplot2)

ggplot(df, aes (fill=position, y=points, x=team)) + 
  geom_bar(position=' stack ', stat=' identity ')

Сложенная штриховая диаграмма в R

Настройка составной гистограммы

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

 library (ggplot2)

ggplot(df, aes (fill=position, y=points, x=team)) + 
  geom_bar(position=' stack ', stat=' identity ') +
  theme_minimal() + 
  labs(x=' Team ', y=' Points ', title=' Avg. Points Scored by Position & Team ') +
  theme(plot.title = element_text (hjust=0.5, size=20, face=' bold ')) +
  scale_fill_manual(' Position ', values=c(' coral2 ', ' steelblue ', ' pink '))

Составная гистограмма в R с использованием ggplot2

Мы также можем дополнительно настроить внешний вид, используя одну из предопределенных тем в библиотеке ggthemes . Например, мы могли бы использовать тему Wall Street Journal из этой библиотеки:

 install.packages ('ggthemes')

library (ggplot2)
library (ggthemes)

ggplot(df, aes (fill=position, y=points, x=team)) + 
  geom_bar(position=' stack ', stat=' identity ') +
  theme_wsj() 

Stacked Barplot R с собственной темой

Обратитесь к нашему полному руководству по лучшим темам ggplot2, чтобы узнать еще больше тем.

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

Полное руководство по заголовкам ggplot2
Как создать сгруппированную диаграмму в R, используя ggplot2
Как создавать параллельные графики в ggplot2

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

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