Заполнение сложенного / уклоненного бара разными цветами - PullRequest
1 голос
/ 21 июня 2019

Я пытаюсь построить диаграмму, комбинирующую сложенные и уклоненные для сравнения двух бизнес-линий за месяцы по двум разным KPI (VOL и NV). Я хотел бы что-то вроде этого: (https://imgur.com/a/IambH09)

Я бы использовал 4 разных цвета, но даже используя

scale_fill_manual

он использует только первые два для всех категорий. Как вы думаете, это возможно? В противном случае я не пойду дальше, настраивая другие детали

Спасибо

Bruno

это результат, с которым я застрял: https://imgur.com/a/5RJMMiN

df=data.frame(
  SOC=rep(c("ENERGIA","ENERGIE"),each=4),
  MESE_RIF=rep(c("2019_01","2019_02")),
  CHURN_TYPE=rep(c("VOL","NV"),each=2),
  CHURN_RATE=rep(c(1.35,1.14,0.23,0.22,1.49,1.54,0.13,0.10)),
  NR_LOST=rep(c(8288,7010,1432,1372,2818,2857,247,186)))

#filling colors
fill <- c("#72A3C9", "#B9DDF1","#F07E27","#FFC786")


#graph
ggplot(df, aes(x = SOC, y = CHURN_RATE, fill = CHURN_TYPE)) + 
geom_bar(position = "stack", stat = "identity") + facet_wrap( ~ MESE_RIF)  + 
geom_text(data=df, aes(label = (df$NR_LOST)), size=4, 
position=position_stack(vjust = 0.5)) + scale_fill_manual(values=fill)

1 Ответ

4 голосов
/ 21 июня 2019

У вас есть четыре цвета заливки, и fill сопоставляется с CHURN_RATE, который имеет два значения.

Одним из подходов может быть сопоставление fill с комбинацией CHURN_RATE и SOC, например, так.

ggplot(df, aes(x = SOC, y = CHURN_RATE, 
               fill = interaction(CHURN_TYPE, SOC))) + 
...

enter image description here

...