【发布时间】:2021-09-25 22:34:03
【问题描述】:
我目前正在尝试绘制每年朱利安日期的苍蝇密度。目的是查看两种数据收集方法(第 1 组和第 2 组)的苍蝇密度何时达到峰值。我有很多行数据,在 10 年的过程中,例如,数据集是这样的:
| year | julian | group |
|---|---|---|
| 2000 | 214 | 1 |
| 2001 | 198 | 1 |
| 2001 | 224 | 1 |
| 2000 | 189 | 2 |
| 2000 | 214 | 2 |
| 2001 | 222 | 2 |
| 2001 | 259 | 2 |
| 2000 | 260 | 2 |
| 2000 | 212 | 1 |
每一行都是一个单独的观察。 这是我第一次使用 ggplots 绘图,所以我对如何绘制每年的垂直峰值线感到困惑。 目前的代码如下所示:
代码
data$group <- as.factor(data$group)
plots <- ggplot(data, aes(x = julian, group = group)) +
geom_density(aes(colour = group),adjust = 2) + facet_wrap(~year, ncol = 2)
我尝试使用此代码绘制峰值:
geom_vline(data = vline, aes(xintercept = density(data$julian)$x[which.max(density(data$julian)$y)]))
vline <- summarise(group_by(data,year, group=group), density(ata$julian, group=group)$x[which.max(density(data$julian)$y)])
vline
但是我认为它已经找到了所有年份和所有组的峰值密度。 请任何人帮助建议我如何绘制每年的最大密度并在每个方面进行分组?如果有多个峰更好,我将如何找到这些峰以及峰的定量值?
提前谢谢你,我对ggplots很陌生。
【问题讨论】:
标签: r ggplot2 facet-wrap kernel-density density-plot