Questa domanda è un seguito imprevisto da Draw vertical ending of error bar line in dotplot. Mentre la domanda citata è stata risolta con successo - c'è un avvertimento. Quando introduco più di tre condizioni per dotplot, non voglio disegnare i tick verticali | --o-- | alla fine delle barre di errore.Tick della barra degli errori | --o-- | non disegnare per più di tre condizioni in dotplot
Come suggerito da @Josh nei commenti, ho iniettato browser()
nella prima riga di funzione che richiama l'aggiornamento panel.Dotplot
per vedere cosa va storto, ma non è uscito con nulla che mi aiuti a risolverlo. Ecco un codice di esempio per quattro condizioni Dotplot()
con la funzione panel.Dotplot
aggiornata che non funziona. Essa funzionerà, se si diminuisce il numero di condizioni (risposta di controllo per la domanda citata sopra):
require(Hmisc)
#Fake conditions
mean = c(1:18)
lo = mean-0.2
up = mean+0.2
name = c("a","b","c")
cond1 = c("A","B","C")
cond2 = c(rep("E1",9),rep("E2",9))
d = data.frame (name = rep(name,6), mean, lo, up,
cond1=rep(cond1,each=3,times=2), cond2)
# Create the customized panel function
mypanel.Dotplot <- function(x, y, ...) {
panel.Dotplot(x,y,...)
tips <- attr(x, "other")
panel.arrows(x0 = tips[,1], y0 = y,x1 = tips[,2],
y1 = y,length = 0.1, unit = "native",
angle = 90, code = 3)
}
#Draw Dotplot - `panel.Dotplot` doesn't change anything
setTrellis()
Dotplot(name ~ Cbind(mean,lo,up) | cond1 * cond2, data=d, ylab="", xlab="",col=1,
panel = mypanel.Dotplot)
Ora ho la storia completa, Cheers @jbaums! Cleveland sarebbe orgogliosa di noi ;-) –