Sto cercando di capire come determinare i valori dei punti centrali delle barre raggruppate, ovvero le posizioni X effettive del centro di ciascuna barra. Questo è facilmente fatto nella funzione R barplot
di base, tuttavia mi piacerebbe poterlo fare in reticolo 's barchart
. Il mio obiettivo è visualizzare i valori della colonna di testo in cima alla barra corrispondente.Ottenimento dei valori dei punti medi delle barre raggruppate nella funzione del diagramma a barre tratteggiato
Il codice seguente consente di posizionare il testo sopra le barre finché non utilizzo i sottogruppi. Ho provato a cercare su Internet la soluzione, ma nulla sembra funzionare. Come puoi vedere dal grafico, i punti medi sono determinati solo per il centro dell'intero gruppo.
Grazie!
library(lattice)
test= data.frame(
group=c("WK 1", "WK 1", "WK 1", "WK 2", "WK 2", "WK 2", "WK 3", "WK 3", "WK 3"),
subgroup=c(1,2,3,1,2,3,1,2,3) ,
percent=c(60,50,80,55,56,65,77,65,86),
text=c("n=33", "n=37","n=39","n=25","n=27","n=22","n=13","n=16","n=11")
)
barchart(data=test,
percent~group,
groups=subgroup,
panel = function(x,y,...){
panel.barchart(x, y, ...)
panel.text(x=unique(test$group),
y=test$percent,
label=unique(test$text)
)
}
)
Non necessariamente la risposta, ma ho avuto la stessa domanda circa ggplot che avrebbe funzionato per voi trovato [(QUI)] (http://stackoverflow.com/questions/10327267/annotation-above-bars) –
sì, lo so quel ggplot può fare qualcosa del genere ma a questo punto sono un po 'riluttante a usare GGPLOT. Mi piacerebbe essere in grado di farlo in TRELLIS. Ho un programma in R base che risolve anche questo problema. Grazie mille. –