Круговая диаграмма с гранями ggplot2 - не полная, просто линии - PullRequest
0 голосов
/ 14 ноября 2018
dat <- data.frame(table(total$Name, total$Color))
# adds the Count column
names(dat) <- c("Name","Color","Count")

NAME    COLOR    Count
John    Green    1
Joe     Green    12
Jane    Green    32  
Jill    Green    34
John    Blue     2
Joe     Blue     4
Jane    Blue     23  
Jill    Blue     12
John    Red      4
Joe     Red      42
Jane    Red      36  
Jill    Red      15 

Как бы я создал набор ограненных круговых диаграмм по имени? Когда я пытаюсь:

e <- ggplot(data=dat, aes(x=Name, fill=Color)) 
e + geom_bar(position = "fill") + 
facet_wrap(~Name) +
coord_polar()

Это приводит к круговым диаграммам, которые являются просто линиями. Кто-нибудь может выявить ошибки или предложить какие-либо решения?

1 Ответ

0 голосов
/ 14 ноября 2018
  1. Установите x в aes на статическое значение.Я выбрал 0.
  2. Добавить theta = "y" toordin_polar`, чтобы указать, какую ось использовать в углах.
  3. Добавить scale_fill_identity(), поскольку вы непосредственно сопоставили цветав значение заполнения.
  4. Добавлено theme_void(), чтобы избавиться от запутанных осей и т. д.
library(tidyverse)

dat <- tribble(~Name,~Color,~Count,
"John",    "Green",    1,
"Joe" ,   "Green",   12,
"Jane",    "Green",    32, 
"Jill",    "Green",    34,
"John",    "Blue",   2,
"Joe" ,   "Blue",   4,
"Jane",    "Blue",   23,  
"Jill",    "Blue",   12,
"John",    "Red",   4,
"Joe" ,   "Red",   42,
"Jane",    "Red",   36,  
"Jill",    "Red",   15)

ggplot(data=dat, aes(x = 0, y = Count, fill=Color)) + 
  geom_col(position = "fill") + 
  facet_wrap(~Name) +
  coord_polar(theta = "y") +
  scale_fill_identity() +
  theme_void()

Созданона 2018-11-14 по представлению пакета (v0.2.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...