Просто несколько предложений. Биннинг - это, конечно, проблема. Вы можете либо округлять, либо создавать разрезы. Это полностью зависит от того, что вы хотите показать.
Я покажу два варианта, один с plyr::round_any
, другой с использованием cut
library(tidyverse)
foo <- read_csv("Time, Value, repeat_name
0, 5, repeat1
0, 5, repeat2
0, 5, repeat3
3.1, 7, repeat1
3.25, 8, repeat2
3, 9, repeat3
6.2, 5, repeat1
6.5, 5, repeat2
6, 5, repeat3
9.3, 5, repeat1
9.75, 5, repeat2
9, 5, repeat3")
foo %>%
mutate(time_round = plyr::round_any(Time, 5)) %>%
ggplot(aes(time_round, Value)) +
stat_summary() +
scale_y_continuous(limits = c(0, NA))
#> No summary function supplied, defaulting to `mean_se()`
foo %>%
mutate(time_cut = cut(Time, c(-Inf,4,8,Inf))) %>%
ggplot(aes(time_cut, Value)) +
stat_summary() +
scale_y_continuous(limits = c(0, NA))
#> No summary function supplied, defaulting to `mean_se()`
Создано в 2020-04-15 пакетом Представление (v0.3.0)