Як створити секторні діаграми в ggplot2 (з прикладами)


Кругова діаграма — це тип діаграми у формі кола, у якій використовуються зрізи для відображення пропорцій цілого.

У цьому посібнику пояснюється, як створювати та редагувати секторні діаграми в R за допомогою бібліотеки візуалізації даних ggplot2 .

Як створити базову кругову діаграму

Наступний код показує, як створити базову секторну діаграму для набору даних за допомогою ggplot2:

 library (ggplot2)

#create data frame
data <- data.frame(" category " = c('A', 'B', 'C', 'D'),
                   " amount " = c(25, 40, 27, 8))

#create pie chart
ggplot(data, aes (x="", y=amount, fill=category)) +
  geom_bar(stat=" identity ", width= 1 ) +
  coord_polar(" y ", start= 0 ) 

кругова діаграма ggplot2

Як змінити вигляд секторної діаграми

Кругова діаграма за замовчуванням у ggplot2 досить потворна. Найпростіший спосіб покращити зовнішній вигляд — використати theme_void() , який видаляє фон, сітку та мітки:

 ggplot(data, aes (x="", y=amount, fill=category)) +
  geom_bar(stat=" identity ", width= 1 ) +
  coord_polar(" y ", start= 0 ) +
  theme_void() 

ggplot2 кругова діаграма без міток

Ми можемо покращити зовнішній вигляд діаграми, додавши мітки всередину фрагментів:

 ggplot(data, aes (x="", y=amount, fill=category)) +
  geom_bar(stat=" identity ", width= 1 ) +
  coord_polar(" y ", start= 0 ) +
  geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) +
  labs(x = NULL, y = NULL, fill = NULL) 

Кругова діаграма в ggplot2 із спеціальними мітками

Ми можемо ще більше налаштувати діаграму, вказавши наші власні шістнадцяткові кольори для використання для фрагментів за допомогою аргументу scale_fill_manual() :

 ggplot(data, aes (x="", y=amount, fill=category)) +
  geom_bar(stat=" identity ", width= 1 ) +
  coord_polar(" y ", start= 0 ) +
  geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) +
  labs(x = NULL, y = NULL, fill = NULL) +
  theme_classic() +
  theme(axis.line = element_blank(),
          axis.text = element_blank(),
          axis.ticks = element_blank()) +
  scale_fill_manual(values=c(" #FF5733 ", " #75FF33 ", " #33DBFF ", " #BD33FF ")) 

Кругова діаграма ggplot2, ручне заповнення в масштабі

Порада. Використовуйте цей шістнадцятковий засіб вибору кольорів , щоб знайти комбінації шістнадцяткових кодів кольорів, які добре виглядають разом.

Ви також можете налаштувати кольори шматочків, просто вибравши одну з кольорових шкал пивовара . Наприклад, ось так виглядає колірна гамма «блакитний»:

 ggplot(data, aes (x="", y=amount, fill=category)) +
  geom_bar(stat=" identity ", width= 1 ) +
  coord_polar(" y ", start= 0 ) +
  geom_text( aes (label = paste0(amount, " % ")), position = position_stack(vjust= 0.5 )) +
  labs(x = NULL, y = NULL) +
  theme_classic() +
  theme(axis.line = element_blank(),
          axis.text = element_blank(),
          axis.ticks = element_blank()) +
  scale_fill_brewer(palette=" Blues ") 

Пивовар у масштабі в ggplot2

Додаткові ресурси

Як створити згруповану коробкову діаграму в R за допомогою ggplot2
Як створити теплову карту в R за допомогою ggplot2
Як створити діаграму Ганта в R за допомогою ggplot2

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *