У меня есть такой фрейм данных (извините за длинный код)
set.seed(23)
date_list = seq(1:30)
testframe1 = data.frame(Date = date_list)
testframe1$ABC = rnorm(30)
testframe2 = data.frame(Date = date_list)
testframe2$DEF = rnorm(30)
testframe3 = data.frame(Date = date_list)
testframe3$GHI = rnorm(30)
testframe4 = data.frame(Date = date_list)
testframe4$JKL = rnorm(30)
testlist = list(testframe1, testframe2, testframe3, testframe4)
names(testlist) = c("ABC", "DEF", "GHI", "JKL")
library(tidyverse)
testlist = testlist %>% reduce(left_join, by = "Date")
library(reshape2)
testlist <- melt(testlist,id.vars = "Date")
Я хочу создать барплот, и я попробовал это, что дало мне следующий график:
ggplot(testlist, aes(fill = variable, y = value, x = Date)) +
geom_bar(stat="identity")
Но это не совсем то, что мне нужно. Я не хочу, чтобы столбцы складывались, я хочу, чтобы они накладывались. Так, чтобы переменная с самым высоким значением перекрывалась 2-м самым высоким и так далее, до наименьшего значения.
Есть ли простой способ это исправить? Я нахожу помощь только для разбитых барплотов, но это не то, что мне нужно.