Я пытаюсь создать график, показывающий измеренные значения со средним значением и 95% доверительным интервалом для данной группы среди точек. R продолжает говорить мне, что он удалил строки со значением 0, и поэтому остальные точки отключены.
Код, который я использую:
data.summary <- data %>%
group_by(condition, conc) %>%
summarise(
sd = sd(score, na.rm = TRUE),
score = mean(score))
ggplot(data, aes(condition, score, color=concentration)) +
geom_jitter(aes(color=conc),position = position_jitter(0.2)) +
expand_limits(x = 0, y = 0) +
scale_color_manual("Conc",breaks = c("4", "5", "6", "7"),
values=c("sienna1", "dodgerblue1", "green1", "deeppink1"))+
new_scale("color")+
geom_pointrange(aes(ymin = score-sd, ymax = score+sd, color=conc),data = data.summary) +
expand_limits(x = 0, y = 0) +
scale_color_manual("Conc",breaks = c("4", "5", "6"),
values=c("sienna4", "dodgerblue4", "green4", "deeppink4")) +
ggtitle("Data")
Данные (формат dput):
structure(list(hydra = c(1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L,
1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 1L, 2L, 3L, 4L, 5L, 6L, 7L,
8L, 9L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 1L, 2L, 3L, 4L, 5L,
6L, 7L, 8L, 9L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 1L, 2L, 3L,
4L, 5L, 6L, 7L, 8L, 9L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L),
time = c(72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L, 72L,
72L, 72L), condition = structure(c(1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L,
3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L,
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L,
4L, 4L, 4L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L,
4L, 4L, 4L, 4L, 4L, 4L), .Label = c("Control Bisection",
"Control Decapitation", "Treatment Bisection", "Treatment Decapitation"
), class = "factor"), conc = c(0L, 0L, 0L, 0L, 0L, 0L, 0L,
0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 4L, 4L, 4L, 4L,
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 5L,
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L,
5L, 5L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L,
6L, 6L, 6L, 6L, 6L), score = c(9L, 10L, 9L, 7L, 10L, 9L,
9L, 9L, 10L, 9L, 9L, 10L, 6L, 9L, 10L, 10L, 10L, 9L, 2L,
0L, 3L, 0L, 0L, 5L, 0L, 0L, 0L, 7L, 5L, 4L, 3L, 3L, 3L, 4L,
5L, 3L, 0L, 0L, 0L, 0L, 3L, 0L, 2L, 0L, 2L, 0L, 4L, 2L, 3L,
0L, 7L, 5L, 3L, 4L, 0L, 5L, 3L, 4L, 2L, 0L, 4L, 0L, 4L, 4L,
4L, 3L, 5L, 2L, 3L, 4L, 5L, 4L)), class = "data.frame", row.names = c(NA,
-72L))
Вот как должны выглядеть данные по сравнению с тем, что я получаю