跨时间的累计和

问题描述 投票:0回答:1

enter image description here我有一个数据集,我想通过时间总结。我有三个植物(番茄,胡椒,南瓜)的十个日期和花数。我想创建一个ggplot(barplot)图,它总结了花的数量,并将它们显示为由植物着色的堆积条形图。 Y轴应为花的累积和,x轴应为时间。当我使用cum_sum时,输出对我来说没有意义。任何帮助都会很棒!谢谢。

dataset here

    df.sum<- df.sub%>% group_by(Date) %>% mutate(cumsum_covered = cumsum(Tomato)) 

ggplot (df.sum, aes (x=Date, y=cumsum_covered)) + geom_bar(stat="identity")
r date ggplot2 bar-chart cumsum
1个回答
1
投票

您按日期分组,因此cumsum将始终为单个值。我们希望按日期订购每种水果的果肉

df.sum <- df.sub %>% 
  # This gives us Date, fruit, amount
  gather(fruit, amount, Tomato, Pepper, Squash) %>%
  # We group by the fruit to get only the cumsums for the correct fruit and order by date
  group_by(fruit) %>% 
  arrange(Date) %>%
  mutate(cumsum_covered = cumsum(amount))

ggplot(df.sum, aes(Date, cumsum_covered, fill=fruit)) + 
  geom_col(position="stack")
© www.soinside.com 2019 - 2024. All rights reserved.