Skenario berikut telah menjadi Most-FAQ di trio penyelidik (I), reviewer / editor (R, tidak terkait dengan CRAN) dan saya (M) sebagai pencipta plot. Kita dapat berasumsi bahwa (R) adalah peninjau bos besar medis yang khas, yang hanya tahu bahwa setiap plot harus memiliki bar kesalahan, jika tidak maka itu salah. Ketika peninjau statistik terlibat, masalah menjadi kurang kritis.
Skenario
Dalam studi cross-over farmakologis yang khas, dua obat A dan B diuji efeknya pada kadar glukosa. Setiap pasien diuji dua kali dalam urutan acak dan dengan asumsi tidak ada carry-over. Titik akhir primer adalah perbedaan antara glukosa (BA), dan kami menganggap bahwa uji-t berpasangan memadai.
(I) menginginkan plot yang menunjukkan kadar glukosa absolut dalam kedua kasus. Dia takut keinginan (R) untuk bar kesalahan, dan meminta kesalahan standar dalam grafik batang. Jangan memulai perang grafik batang di sini ._)
(I): Itu tidak mungkin benar. Bilah tumpang tindih, dan kami memiliki p = 0,03? Bukan itu yang saya pelajari di sekolah menengah.
(L): Kami memiliki desain berpasangan di sini. Bilah kesalahan yang diminta sama sekali tidak relevan, yang penting adalah SE / CI dari perbedaan pasangan, yang tidak ditampilkan dalam plot. Jika saya punya pilihan dan tidak ada terlalu banyak data, saya lebih suka plot berikut
Ditambahkan 1: Ini adalah plot koordinat paralel yang disebutkan dalam beberapa respons
(L): Garis-garis menunjukkan pasangan, dan sebagian besar garis naik, dan itu kesan yang tepat, karena kemiringan adalah yang terpenting (ok, ini kategorikal, namun demikian).
(I): Gambar itu membingungkan. Tidak ada yang memahaminya, dan tidak memiliki bar kesalahan (R mengintai).
(L): Kami juga dapat menambahkan plot lain yang menunjukkan interval kepercayaan yang relevan dari perbedaan tersebut. Jarak dari garis nol memberi kesan ukuran efek.
(I): Tidak ada yang melakukannya
(R): Dan itu memboroskan pohon-pohon berharga
(L): (Sebagai orang Jerman yang baik): Ya, titik pada pohon diambil. Namun saya tetap menggunakan ini (dan tidak pernah mempublikasikannya) ketika kami memiliki beberapa perawatan dan beberapa kontras.
Ada saran ? R-Code di bawah ini, jika Anda ingin membuat plot.
# 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()