У меня есть следующий набор данных:Plotting бар Ошибка в R
conf variable value
1 C1 T1 0.6578166
2 C2 T1 0.6729989
3 C3 T1 0.6629129
4 C4 T1 0.6602419
5 C5 T1 0.6951054
6 C1 T2 0.6764889
7 C2 T2 0.7008580
8 C3 T2 0.6921985
9 C4 T2 0.6868215
10 C5 T2 0.7104877
11 C1 T3 0.6834098
12 C2 T3 0.7120974
13 C3 T3 0.7045760
14 C4 T3 0.6986261
15 C5 T3 0.7180474
16 C1 T4 0.6875082
17 C2 T4 0.7185950
18 C3 T4 0.7122448
19 C4 T4 0.7051376
20 C5 T4 0.7229975
21 C1 T5 0.6902167
22 C2 T5 0.7228775
23 C3 T5 0.7167748
24 C4 T5 0.7093825
25 C5 T5 0.7261777
....
Я хочу, чтобы построить эти данные в виде линии участка с погрешностями. Для этого я использовал функцию summarySE
, которая определена в этом website. Я хочу, чтобы график был линейным графиком, где ось x представляет variable
, а ось y представляет value
и группу conf
. Строка ошибки должна быть представлена каждой переменной с учетом значений от T1
до точки текущей переменной. Например, считанные значения для строки ошибок в T6
должны быть значениями от T1
до T6
.
Исходя из этого, я назвал summarySE
функции, как:
m2 <- summarySE(m, measurevar = "value", groupvars = c("variable","conf") , na.rm=TRUE)
Результаты, которые я получил являются:
variable conf N value sd se ci
1 T1 C1 1 0.6578166 NA NA NA
2 T1 C2 1 0.6729989 NA NA NA
3 T1 C3 1 0.6951054 NA NA NA
4 T1 C4 1 0.6629129 NA NA NA
5 T1 C5 1 0.6602419 NA NA NA
6 T2 C1 1 0.6764889 NA NA NA
......
Я также попробовал следующее:
m2 <- summarySE(m, measurevar = "value", groupvars = c("conf") , na.rm=TRUE)
I получил следующие результаты:
conf N value sd se ci
1 C1 60 0.7038542 0.009609437 0.001240573 0.002482381
2 C2 60 0.7395447 0.012869318 0.001661422 0.003324497
3 C3 60 0.7418830 0.010397609 0.001342326 0.002685987
4 C4 60 0.7365407 0.014438260 0.001863971 0.003729798
5 C5 60 0.7301954 0.014389284 0.001857649 0.003717146
Но это не работает, чтобы построить панель ошибок с каждой переменной.
Чтобы нарисовать сюжет:
coverage_plot <- ggplot(m2, aes(x=m$variable, y=m$value, group=conf, color=conf)) +
geom_errorbar(aes(ymin=value-ci, ymax=value+ci), width=0.1, position=pd) +
geom_line(position=pd) + geom_point(position=pd) +
scale_x_discrete(labels = c(1:60))
Когда я запускаю код, я получаю следующее сообщение об ошибке:
Error: Aesthetics must be either length 1 or the same as the data (5): ymin, ymax, x, y, group, colour
Может кто-то помочь мне решить эту проблему?
Нет ничего плохого в вашем коде. Можете ли вы представить воспроизводимый пример? – Koundy
@koundy извините. Вы имеете в виду предоставление сюжета? – Nasser
Да, попробуйте построить с некоторыми встроенными наборами данных, такими как данные диафрагмы, и покажите здесь сюжет. – Koundy