Le scénario suivant est devenu la plupart des FAQ dans le trio d'enquêteur (I), réviseur / éditeur (R, non lié au CRAN) et moi (M) en tant que créateur de l'intrigue. Nous pouvons supposer que (R) est le réviseur de big boss médical typique, qui sait seulement que chaque intrigue doit avoir une barre d'erreur, sinon c'est faux. Lorsqu'un réviseur statistique est impliqué, les problèmes sont beaucoup moins critiques.
Scénario
Dans une étude pharmacologique croisée typique, deux médicaments A et B sont testés pour leur effet sur le taux de glucose. Chaque patient est testé deux fois dans un ordre aléatoire et sous l'hypothèse d'aucun report. Le critère d'évaluation principal est la différence entre le glucose (BA) et nous supposons qu'un test t apparié est adéquat.
(I) veut un graphique qui montre les niveaux absolus de glucose dans les deux cas. Il craint le désir de (R) d'avoir des barres d'erreur et demande des erreurs standard dans les graphiques à barres. Ne commençons pas la guerre des graphiques à barres ici ._)
(I): Cela ne peut pas être vrai. Les barres se chevauchent et nous avons p = 0,03? Ce n'est pas ce que j'ai appris au lycée.
(M): Nous avons ici un design apparié. Les barres d'erreur demandées sont totalement hors de propos, ce qui compte est le SE / CI des différences appariées, qui ne sont pas affichées dans le graphique. Si j'avais le choix et qu'il n'y avait pas trop de données, je préférerais l'intrigue suivante
Ajouté 1: il s'agit du tracé de coordonnées parallèles mentionné dans plusieurs réponses
(M): Les lignes montrent l'appariement, et la plupart des lignes montent, et c'est la bonne impression, car c'est la pente qui compte (ok, c'est catégorique, mais néanmoins).
(I): Cette image prête à confusion. Personne ne le comprend et il n'a pas de barres d'erreur (R est caché).
(M): Nous pourrions également ajouter un autre graphique qui montre l'intervalle de confiance pertinent de la différence. La distance de la ligne zéro donne une impression de la taille de l'effet.
(I): Personne ne le fait
(R): Et ça gaspille des arbres précieux
(M): (En bon allemand): Oui, on pointe sur les arbres. Mais j'utilise quand même cela (et je ne le fais jamais publier) lorsque nous avons plusieurs traitements et plusieurs contrastes.
Des suggestions ? Le code R est ci-dessous, si vous souhaitez créer un tracé.
# Graphics for Crossover experiments
library(ggplot2)
library(plyr)
theme_set(theme_bw()+theme(panel.margin=grid::unit(0,"lines")))
n = 20
effect = 5
set.seed(4711)
glu0 = rnorm(n,120,30)
glu1 = glu0 + rnorm(n,effect,7)
dt = data.frame(patient = rep(paste0("P",10:(9+n))),
treatment = rep(c("A","B"), each=n),glucose = c(glu0,glu1))
dt1 = ddply(dt,.(treatment), function(x){
data.frame(glucose = mean(x$glucose), se = sqrt(var(x$glucose)/nrow(x)) )})
tt = t.test(glucose~treatment,paired=TRUE,data=dt,conf.int=TRUE)
dt2 = data.frame(diff = -tt$estimate,low=-tt$conf.int[2], up=-tt$conf.int[1])
p = paste("p =",signif(tt$p.value,2))
png(height=300,width=300)
ggplot(dt1, aes(x=treatment, y=glucose, fill=treatment))+
geom_bar(stat="identity")+
geom_errorbar(aes(ymin=glucose-se, ymax=glucose+se),size=1., width=0.3)+
geom_text(aes(1.5,150),label=p,size=6)
ggplot(dt,aes(x=treatment,y=glucose, group=patient))+ylim(0,190)+
geom_line()+geom_point(size=4.5)+
geom_text(aes(1.5,60),label=p,size=6)
ggplot(dt2,aes(x="",y=diff))+
geom_errorbar(aes(ymin=low,ymax=up),size=1.5,width=0.2)+
geom_text(aes(1,-0.8),label=p,size=6)+
ylab("95% CI of difference glucose B-A")+ ylim(-10,10)+
theme(panel.border=element_blank(), panel.grid.major.x=element_blank(),
panel.grid.major.y=element_line(size=1,colour="grey88"))
dev.off()