[R] Odp: more dot plots on 1 page
Petr PIKAL
petr.pikal at precheza.cz
Wed Aug 27 11:41:03 CEST 2008
Hi
r-help-bounces at r-project.org napsal dne 26.08.2008 17:06:27:
> Hi,
>
>
>
> I would like to have six dot plots on one page. I make the plots in a
> 'for loop' because it is six times the same graph but for different
> subjects (species).
>
> I tried it with "par(mfrow=c(3,2), oma=c(3,3,2,0), mar=c(2,2,2,2))"; but
> this does not work for dot plots apparently.
You mix standard and grid graphics which I would not recommend without
detailed knowledge of both. From what you write I presume that you want 6
panels on one page. Maybe you could try to put discriminating variable to
dotplot directly?
Something like
dotplot(XX7$BG_dry~XX7$stress|inputdot$sp)
Regards
Petr
>
> Then I tried with print(). But then I had to give the dot plots names.
> This also does not work.
>
> Any one who has some more ideas? What do I do wrong?
>
>
>
> species.vector<-c("Lp","Pp","Pl","Ra","Lc","Ml")
>
>
>
> for(i in 1:6){
>
> XXXX<- inputdot[inputdot$sp_==species.vector[i],]
>
> str(XXXX)
>
> XX7<-subset(XXXX,chamber==7)
>
> XX8<-subset(XXXX,chamber==8)
>
> XX9<-subset(XXXX,chamber==9)
>
> XX10<-subset(XXXX,chamber==10)
>
>
>
> species.vector[i] <-
>
> dotplot(XX7$BG_dry~XX7$stress,ylim=c(0,20),ylab="biomass",scales=list(ti
> ck.number=10),
>
> panel = function (x, y) {
>
> panel.abline(v=c(1:8),lty=2,col="gray")
>
> panel.xyplot(x, y, pch = 1, col = "blue", cex = .75)
>
> panel.xyplot(XX8$stress,XX8$BG_dry, pch = 16, col = "red", cex = .6)
>
> panel.xyplot(XX9$stress,XX9$BG_dry, pch = 2, col = "blue", cex = .6)
>
> panel.xyplot(XX10$stress,XX10$BG_dry, pch = 17, col = "red", cex = .6)
>
> },
>
> key = list(text = list(c("ch7", "ch8","ch9","ch10"), cex = .75),
>
> points = list(pch = c(1, 16,2,17), col = c("blue","red","blue","red"),
> cex = .75),
>
> space = "bottom", border = T),main=species.vector[i]) )
>
> }
>
>
>
> print(Lp, split=c(1,1,2,3), more=TRUE)
>
> print(Pp, split=c(2,1,2,3), more=TRUE)
>
> print(Pl, split=c(1,2,2,3), more=TRUE)
>
> print(Ra, split=c(2,2,2,3), more=TRUE)
>
> print(Lc, split=c(1,3,2,3), more=TRUE)
>
> print(Ml, split=c(2,3,2,3))
>
>
>
> Thanks a lot!
>
> Joke
>
>
>
> Joke Van den Berge, PhDs
>
> University of Antwerp, Campus Drie Eiken
>
> Department of Biology
>
> Research Group of Plant and Vegetation Ecology
>
> Universiteitsplein 1
>
> B-2610 Wilrijk, Belgium
>
>
>
> email: Joke.VandenBerge at ua.ac.be <mailto:Joke.VandenBerge at ua.ac.be>
>
> tel: +32 3 820 22 72 fax: +32 3 820 22 71
>
>
>
>
>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at 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.
More information about the R-help
mailing list