Как заставить dodge в geom_bar согласиться с dodge в geom_errorbar, geom_point
У меня есть набор данных, где измерения сделаны для разных групп в разные дни.
Я хочу иметь рядом друг с другом столбцы, представляющие измерения в разные дни для разных групп с группами столбцов, разнесенными по дням измерений, с наложенными на них полосами ошибок.
У меня возникли проблемы с уклонением вgeom_bar
согласен с уклонением.geom_errorbar
Вот простой кусок кода:
days = data.frame(day=c(0,1,8,15));
groups = data.frame(group=c("A","B","C","D", "E"), means=seq(0,1,length=5));
my_data = merge(days, groups);
my_data$mid = exp(my_data$means+rnorm(nrow(my_data), sd=0.25));
my_data$sigma = 0.1;
png(file="bar_and_errors_example.png", height=900, width=1200);
plot(ggplot(my_data, aes(x=day, weight=mid, ymin=mid-sigma, ymax=mid+sigma, fill=group)) +
geom_bar (position=position_dodge(width=0.5)) +
geom_errorbar (position=position_dodge(width=0.5), colour="black") +
geom_point (position=position_dodge(width=0.5), aes(y=mid, colour=group)));
dev.off();
На графике сегменты ошибок появляются с фиксированным смещением относительно своей полосы (извините, для новичков не допускаются графики, даже если субъектом является ggplot2).
Когда ширина бина регулируется вgeom_bar
смещение не фиксируется и меняется изо дня в день.
Заметить, чтоgeom_errorbar
а такжеgeom_point
увернуться в тандеме. Как я могу получитьgeom_bar
согласиться с двумя другими?
Любая помощь приветствуется.