时间累计

时间:2018-06-22 13:33:24

标签: r date ggplot2 bar-chart cumsum

enter image description here我有一个数据集,希望随时间进行总结。我有三个植物(西红柿,胡椒,南瓜)的十个约会期和花朵数。我想创建一个ggplot(条形图)图,该图将花的数量相加并将其显示为按植物着色的堆叠条形图。 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")

1 个答案:

答案 0 :(得分:1)

您正在按日期分组,因此总金额将始终是单个值。我们想要按日期排序每个水果的总和

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")
相关问题