[R] Plotting multiple xyplots in same page
Duncan Mackay
mackay at northnet.com.au
Thu Feb 14 01:35:22 CET 2013
Hi Lisa
You can use the page function of xyplot to do this
xy <-
xyplot(decrease ~ treatment, OrchardSprays,
groups = rowpos, type = "a",
page = function(n){
grid.text(LETTERS[j],
y = 0.95,
x = 0.01,
default.units = "npc",
just = c("left"),
gp = gpar(fontsize = 12) )
},
auto.key = list(x = 0.2, y = 0.9,
cex = 0.75, points = FALSE, lines = TRUE))
j = 1
print(xy, pos = c(0.0, 0.0, 0.5, 0.5), more = TRUE)
j = j+1
print(xy, pos = c(0.0, 0.5, 0.5, 1.0), more = TRUE)
j = j+1
print(xy, pos = c(0.5, 0.0, 1.0, 0.5), more = TRUE)
j = j+1
print(xy, pos = c(0.5, 0.5, 1.0, 1.0), more = FALSE)
amend x, y and grid::gp positions/values to suit
There are other ways using trellis.focus and the package grid
HTH
Regards
Duncan
Duncan Mackay
Department of Agronomy and Soil Science
University of New England
Armidale NSW 2351
Email: home: mackay at northnet.com.au
At 08:28 14/02/2013, you wrote:
>Dear Rhelp,
>
>I would like to have 6 xyplots in the same page. Similar to
>(par(mfrow=c(3,3))
>Found this example on the R archives.
>library(lattice)
>trellis.par.set(theme = col.whitebg())
>xy <- xyplot(decrease ~ treatment, OrchardSprays,
> groups = rowpos, type = "a",
> auto.key = list(x = 0.2, y = 0.9,
> cex = 0.75, points = FALSE, lines = TRUE))
>
>print(xy, pos = c(0.0, 0.0, 0.5, 0.5), more = TRUE)
>print(xy, pos = c(0.0, 0.5, 0.5, 1.0), more = TRUE)
>print(xy, pos = c(0.5, 0.0, 1.0, 0.5), more = TRUE)
>print(xy, pos = c(0.5, 0.5, 1.0, 1.0), more = FALSE)
>
>
>
>
>When I changed the print() to:
>
> print(xy, pos=c(0.0,0.0,0.33,0.33),more = TRUE),
>the figure was not looking good.
>
>Also, is it possible to assign A, B, C,D, etc for each figure.
>
>
>
>a<- rnorm(1000,0,1)
>b<- rnorm(1000,0,2)
>c<- rnorm(1000,0,3)
>d<- rnorm(1000,0,4)
>par(mfrow=c(2,2))
>hist(a,main="")
>title(main="A",adj=0)
>hist(b,main="")
>title(main="B",adj=0)
>hist(c,main="")
>title(main="C",adj=0)
>hist(d,main="")
>title(main="D",adj=0)
>
>
>I tried this to xyplot, but it was not working.
>
>Please help me.
>
>Many thanks in advance,
>Lisa.
>
>______________________________________________
>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