假设一个框架:
df <- data.frame(Date = c("2016-12-31","2017-01-23","2017-03-28","2018-01-01"), Var1 = c(11,22,45,63), Var2 = c(1,2,3,4), Var3 = c(8,9,10,11))
然后融合我们的数据以创建堆积的条形图:
data <- reshape2::melt(df,id.vars = 'Date', variable.name = 'series')
然后绘制图表:
ggplot(data,aes(
y = value ,
x = as.Date(Date),
fill = series
)) + geom_bar(position="stack", stat="identity")
有没有一种方法可以重新排列条形,以使Var3在顶部,其他在下面?因此(在这种情况下)将是:
Var3(蓝色),Var1(红色),Var2(绿色)