Hi, I have a query regarding barplot I have a following data AIS LEvel 1 2 3 body region A 10 15 20 B 15 25 15 Now I want to plot a barplot and in each bar (corresponding a body region), I need a percentage of AIS level 1 displayed in the plot. Is there an easy way to do this ? Thanks, Nataraju GM -- "No relationship is Static .. You either Step up or Step down" [[alternative HTML version deleted]]
> I have a following data > > AIS LEvel > 1 2 3 > body region A 10 15 20 > B 15 25 15 > > Now I want to plot a barplot and in each bar (corresponding a bodyregion),> I need a percentage of AIS level 1 displayed in the plot. Is there aneasy> way to do this ?Try this: x <- matrix(c(10,15,15,25,20,15), ncol=3) pct <- apply(x, 1, function(x) 100*x[1]/sum(x)) custompanelfn <- function(...) { panel.barchart(...) panel.text(x=c(5,5), y=c(1,2),paste(format(pct, digits=3),"%", sep="")) } library(lattice) barchart(x, panel=custompanelfn) Regards, Richie. Mathematical Sciences Unit HSL ------------------------------------------------------------------------ ATTENTION: This message contains privileged and confidential inform...{{dropped:20}}
Nattu wrote:> Hi, > > I have a query regarding barplot > > I have a following data > > AIS LEvel > 1 2 3 > body region A 10 15 20 > B 15 25 15 > > Now I want to plot a barplot and in each bar (corresponding a body region), > I need a percentage of AIS level 1 displayed in the plot. Is there an easy > way to do this ? > > Thanks, > Nataraju > GM > >Hi Nataraju, I might not understand exactly what you want, but try this: bardat<-matrix(c(10,15,15,25,20,15),nrow=2) barpos<-barplot(bardat,beside=TRUE) library(plotrix) boxed.labels(barpos,bardat/2,bardat/(sum(bardat[,1]/100))) Jim