[R] panel.xyplot and panel.loess using two different groupings

Bert Gunter gunter.berton at gene.com
Tue Jan 27 20:13:51 CET 2015

Learn to use custom panel functions to give you the flexibility and
features you require.

In this case, you want something like:

xyplot(LRU~PAR|C3C4, groups = species,
       panel= function(x,y,...){  ## custom panel function to add an
overall loess line
       panel.groups = function(x,y,...){
## plus any other key and plot options

Note that this could fail if groups have too few points to fit a loess
curve, so you might want to add checks in the panel.groups function
for this.


-- Bert

Bert Gunter
Genentech Nonclinical Biostatistics
(650) 467-7374

"Data is not information. Information is not knowledge. And knowledge
is certainly not wisdom."
Clifford Stoll

On Tue, Jan 27, 2015 at 10:19 AM, Timothy W. Hilton
<thilton at ucmerced.edu> wrote:
> Hello,
> I have a dataset consisting of four variables: species (factor, five
> levels), C3C4 (factor, two levels), and numeric variables PAR and LRU.
> I wish to produce a scatter plot of PAR vs LRU where (1) each species
> has a unique symbol and color (2) there is an overlaid loess line that
> is calculated for each C3C4 level.  The following code produces a nice
> plot where each species has its own loess curve, but I'm struggling for
> the syntax to produce a single loess curve for all the points in each of
> the two plots:
> xy <- xyplot(LRU~PAR|C3C4, data=light_data, groups=species,
>              panel=panel.superpose,
>              auto.key=TRUE,
>              col.line=pal,
>              par.settings=mytheme,
>              panel.groups=function(x, y, ...){
>                  panel.xyplot(x, y, ...)
>                  panel.loess(x, y, ...)})
> Any help much appreciated.  Thanks!
> Tim
> --
> Timothy W. Hilton
> Assistant Project Scientist
> Sierra Nevada Research Institute
> University of California, Merced
> thilton at ucmerced.edu
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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