Использование stat_summary(geom = "bar) + stat_summary(geom = "errorbar")
, по-видимому, не работает с position_dodge()
, в случае значений x
с различным числом групп условий.
Я пытаюсь сделать (что должно быть простым) барплотом с ggplot2
. У моих данных есть несколько разных выборок (переменная x), и некоторые из этих выборок также имеют переменную fill (condition
) («Scr» или «shRNA»), в то время как другие не имеют (condition = NA
). Когда я пытаюсь построить эти данные, используя оболочки stat_summary
для построения гистограмм с панелями ошибок, функция position_dodge
для панелей ошибок работает только для выборок, которые не имеют разных групп заполнения. stat_summary(geom = "barplot")
кажется функциональным, потому что отдельные полосы отображаются, но их полосы ошибок не выровнены.
test <- data.frame(Sample = c(rep("A",6),rep("B",3)),
Target = c(rep("GENE1",9)),
val = c(1.1,1.2,1.15,.5,.6,.7,.95,1,1.05),
condition = c(rep("Scr",3),rep("shRNA",3),rep(NA,3)))
g <- ggplot(data=test,aes(x=Sample,y=val,fill=condition)) +
stat_summary(geom = "bar", fun.y = mean,position = position_dodge2(width=.5,preserve = "single"),color="black",width=.8) +
stat_summary(geom = "errorbar", fun.data = mean_se, position = position_dodge2(width=.2,preserve = "single"),width=.2) +
scale_y_continuous(expand = expand_scale(mult = c(0,.2))) +
#scale_fill_discrete(guide=guide_legend(title="",nrow=2))
Я ожидаю, что аргумент position_dodge()
в обоих stat_summary()
выровняет строки ошибок по правильной позиции x
, независимо от того, имеет ли данный конкретный образец одну или две группы заполнения.
