Hello R list,

I have a list of data frames, in the form (dump output for an example
list follows message):

$site1
  year        data
1 2000  0.03685042
2 2001  0.02583885
6 2005  0.02480015
7 2006  0.03458745

$site2
  year          data
1 2002  4.071134e-03
2 2003 -4.513524e-08
3 2004  8.336272e-08
4 2005  2.270803e-08
5 2006  1.263597e-02
6 2007           NaN

I would like to plot each site's data on a single plot, using a
different color and marker for each site.  I can't figure out an
elegant way to do this; right now I am calling plot on site1, then
points on site2 ... siteN.  This leads to recycling the list of plot
parameters (color, pch, etc.).

The following code allows me to use 
do.call(FUN, lapply(list.of.sites, etc.

if (dev.cur() > 1) FUN <- points                                              
  else FUN <- plot 

Now I would like to include several panels in one figure (there are
actually several columns of data in the data frame).  I set up the
window with the panels, but that messes up the dev.cur() test I am
doing.

I would be most grateful for any suggestions of a more elegant setup,
or for a different condition to decide whether points or plot should
be called.  Something like axis.already.exists(), but I can't figure
out what that test should be.

Many, many thanks.
-Tim

--

Timothy W. Hilton   
PhD Candidate, Department of Meteorology and Atmospheric Science
The Pennsylvania State University
415 Walker Building, University Park, PA   16802
hil...@meteo.psu.edu

example list of data frames:
foo <-
structure(list(site1 = structure(list(year = structure(1:8, .Label =
c("2000", 
"2001", "2002", "2003", "2004", "2005", "2006", "2007"), class =
c("ordered", 
"factor")), data = c(0.0368504167319695, 0.0258388514332078, 
0.0432316303304793, 0.0104757403348321, -0.00942333944266443, 
0.0248001501763526, 0.03458745330367, NaN)), .Names = c("year", 
"data"), class = "data.frame", row.names = c(NA, -8L)), site2 =
structure(list(
    year = structure(1:6, .Label = c("2002", "2003", "2004", 
    "2005", "2006", "2007"), class = c("ordered", "factor")), 
    data = c(0.00407113433104158, -4.51352402858745e-08,
8.33627186959167e-08, 
    2.27080257687498e-08, 0.0126359731744113, NaN)), .Names =
c("year", 
"data"), class = "data.frame", row.names = c(NA, -6L)), site3 =
structure(list(
    year = structure(1:7, .Label = c("2000", "2001", "2002", 
    "2003", "2004", "2005", "2006"), class = c("ordered", "factor"
    )), data = c(0.0297773868339168, 0.0212836833675155,
0.0301490879766663, 
    0.000944393402486824, -2.70247618264114e-09,
-2.84624718656657e-07, 
    NaN)), .Names = c("year", "data"), class = "data.frame", row.names
= c(NA, 
-7L)), site4 = structure(list(year = structure(1:5, .Label = c("2000", 
"2001", "2002", "2003", "2004"), class = c("ordered", "factor"
)), data = c(0.000418478048104973, 0.00530609034999336,
0.020077837088374, 
0.0326921217142046, NaN)), .Names = c("year", "data"), class =
"data.frame", row.names = c(NA, 
-5L)), site5 = structure(list(year = structure(1:5, .Label = c("2000", 
"2001", "2003", "2004", "2005"), class = c("ordered", "factor"
)), data = c(0.00618165243153993, 0.00303216804813299,
-5.51581146266983e-08, 
1.44109415817357e-09, 0.0336487468345765)), .Names = c("year", 
"data"), class = "data.frame", row.names = c(NA, -5L)), site6 =
structure(list(
    year = structure(1:6, .Label = c("2001", "2002", "2003", 
    "2004", "2005", "2006"), class = c("ordered", "factor")), 
    data = c(-6.33889022834333e-10, 1.34668283090261e-08,
4.17885398551684e-08, 
    0.00202872966966414, -3.82189201782033e-09, NaN)), .Names =
c("year", 
"data"), class = "data.frame", row.names = c(NA, -6L))), .Names =
c("site1", 
"site2", "site3", "site4", "site5", "site6"))

______________________________________________
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.

Reply via email to