[R] Lattice xyplot to group by two parameters
Deepayan Sarkar
deepayan.sarkar at gmail.com
Fri Jun 24 13:03:22 CEST 2011
On Thu, Jun 23, 2011 at 10:15 PM, Guy Jett <GJett at itsi.com> wrote:
> My thanks to this mailing list and its members for their great help in the past. I have yet another question per the following code and comments:
>
> # I need individual graphs grouped by "PARLABEL" AND "Event", with "PARLABEL"
> # controlling pct and lty, and "Event" controlling col (where Event==1 is green
> # and Event==2 is red). This is attempted in the xyplot parameter
> # "groups = c(PARLABEL, Event)". Current behavior appears to be that the
> # colors are controlled by "PARLABEL" along with the shape and line type. Some
> # experimentation with those two parameters (reverse order, one or the other only)
> # suggests that the second parameter is ignored.
[Please let me know which part of the documentation suggested anything
otherwise, and I will try to fix it.]
> # I have also experimented with panel.superpose, subsetting, and Extended formula
> # interface, as appears to be suggested by the "man pages", but to no avail.
Here is an example you should be able to adapt:
http://lmdvr.r-forge.r-project.org/figures/figures.html?chapter=09;figure=09_02;theme=stdBW;code=right
-Deepayan
> # Note that I can get the graphics layout I need with ggplot2, but that has its
> # own issues with secondary axis and subtitle text placement, formatting, and
> # pagination.
> #
> # Example script below. Datafile included.
>
> depthlimit=c(7,-1)
> xlimit=c(0.1,125000)
> TransectOrder = c("LLR19", "LLR18", "LLR17")
>
> OffsetOrder = c("T", "U", "V", "Y", "Z",
> "A", "B", "C", "D", "E", "F", "G", "H")
>
> # Parse the data for these plots ---------------------------------------------
> df <- read.csv(file = "5.04-r02_LTC-SE-SO-Compared.csv")
> df$Transect <- factor(df$Transect, levels = TransectOrder)
> levels(df$Transect)
> df$Offset <- factor(df$Offset, levels = OffsetOrder)
> levels(df$Offset)
>
> xyplot((sbd+sed)/2 ~ Result | Offset+Transect, groups = c(PARLABEL, Event),
> as.table = TRUE,
> drop.unused.levels = FALSE, data = df,
> layout = c(13,3), type = "b",
> xlim = c(0.01, 122000), ylim = depthlimit,
> pch =c(16, 18), cex = c(1, 1), # to be controlled by "PARLABEL"
> lty =c("dashed", "solid"), # to be controlled by "PARLABEL"
> col = c("green", "red"), # to be controlled by "Event"
> scales = list(alternating = 1, x = list(rot = 45, log = TRUE)))
>
> Yours,
> Guy Jett, R.G.
> Project Geologist
> ITSI, A Gilbane Company
> gjett at itsi.com
>
>
> ______________________________________________
> 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