[prev in list] [next in list] [prev in thread] [next in thread] 

List:       r-help
Subject:    Re: [R] make many barplot into one plot
From:       Thomas Levine <thomas.levine () gmail ! com>
Date:       2010-10-31 17:34:38
Message-ID: AANLkTin63aPV5wcvSLjkrDf6JNa+85pcaFH2j5_Ndi=P () mail ! gmail ! com
[Download RAW message or body]

hierobarp or barNest from {plotrix} may do this more neatly.

2010/10/31 Sibylle Stöckli <sibylle.stoeckli@gmx.ch>

> Dear R users
>
>
> I would like to group my barplot graph (see example on the R help
> link). The proposed R code, adding individual bars to the plot, looks
> really overwhelming. My specific dataset just consists of five groups
> and three different levels within each groups (the individual bars).
> The .txt file is read as matrix (horizontal: group, vertical: levels).
>
> The R trellis barchart (function group="") is an easy function, but
> unfortunately the upper plot part look much different from other
> graphs. I would therefore prefer barplot to stansdardize my plots
> within the manuscript.
>
> It would be very  helpful for me to know if anyone else has worked on
> the barplot group function.
>
> Thanks
> Sibylle
>
>
>
> http://onertipaday.blogspot.com/2007/05/make-many-barplot-into-one-plot.html
>
> R code from the link
> ## I have 4 tables like this:satu <- array(c(5,15,20,68,29,54,84,119),
> dim=c(2,4), dimnames=list(c("Negative", "Positive"), c("Black",
> "Brown", "Red", "Blond")))dua <- array(c(50,105,30,8,29,25,84,9),
> dim=c(2,4), dimnames=list(c("Negative", "Positive"), c("Black",
> "Brown", "Red", "Blond")))tiga <- array(c(9,16,26,68,12,4,84,12),
> dim=c(2,4), dimnames=list(c("Negative", "Positive"), c("Black",
> "Brown", "Red", "Blond")))empat <- array(c(25,13,50,78,19,34,84,101),
> dim=c(2,4), dimnames=list(c("Negative", "Positive"), c("Black",
> "Brown", "Red", "Blond")))# rbind() the tables togetherTAB <-
> rbind(satu, dua, tiga, empat)# Do the barplot and save the bar
> midpointsmp <- barplot(TAB, beside = TRUE, axisnames = FALSE)# Add the
> individual bar labelsmtext(1, at = mp, text = c("N", "P"),line = 0,
> cex = 0.5)# Get the midpoints of each sequential pair of bars# within
> each of the four groupsat <- t(sapply(seq(1, nrow(TAB), by =
> 2),function(x) colMeans(mp[c(x, x+1), ])))# Add the group labels !
> for each pairmtext(1, at = at, text = rep(c("satu", "dua", "tiga",
> "empat"), 4),line = 1, cex = 0.75)# Add the color labels for each
> groupmtext(1, at = colMeans(mp), text = c("Black", "Brown", "Red",
> "Blond"), line = 2)
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]



______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic