Aaron Ellison Keynote: Reaching the 99%

783 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
783
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Aaron Ellison Keynote: Reaching the 99%

  1. 1. Reaching the 99% Relevant and useful statistical software for ecologists Aaron M. Ellison Harvard University, Harvard Forest
  2. 2. All ESA papers R SAS JMP SPSS WinBugs OpenBugs JAGS Minitab Ecopath PEcAn Kepler INLA 050010001500
  3. 3. pomp (requires methods, mvtnorm, subplex, deSolve) rjags (requires coda) rINLA (requires sp; recommends numDeriv, Rgraphviz, fields, rgl, mvtnorm, multicore, pixmap) rstan (requires Rcpp, Inline; also C++ compiler) pymc PyStan
  4. 4. changes to the master.txt Assigned 15 months to cellulose 1bx,3bx,6ad,6bd,7ac, and 3 months to cellulose 7bd with missing month value. This means each subplot is sampled in every time period. Changed all "dc" subplots to "bc", since those were missing from all plot 5.2008-2010 2014 2012
  5. 5. filled.contour3 <- function (x = seq(0, 1, length.out = nrow(z)), y = seq(0, 1, length.out = ncol(z)), z, xlim = range(x, finite = TRUE), ylim = range(y, finite = TRUE), zlim = range(z, finite = TRUE), levels = pretty(zlim, nlevels), nlevels = 20, color.palette = cm.colors, col = color.palette(length(levels) - 1), plot.title, plot.axes, key.title, key.axes, asp = NA, xaxs = "i", yaxs = "i", las = 1, axes = TRUE, frame.plot = axes,mar, ...) { # modification by Ian Taylor of the filled.contour function # to remove the key and facilitate overplotting with contour() # further modified by Carey McGilliard and Bridget Ferris # to allow multiple plots on one page if (missing(z)) { if (!missing(x)) { if (is.list(x)) { z <- x$z y <- x$y x <- x$x } else { z <- x x <- seq.int(0, 1, length.out = nrow(z)) } } else stop("no 'z' matrix specified") } else if (is.list(x)) { y <- x$y x <- x$x } if (any(diff(x) <= 0) || any(diff(y) <= 0)) stop("increasing 'x' and 'y' values expected") # mar.orig <- (par.orig <- par(c("mar", "las", "mfrow")))$mar # on.exit(par(par.orig)) # w <- (3 + mar.orig[2]) * par("csi") * 2.54 # par(las = las) # mar <- mar.orig plot.new() # par(mar=mar) plot.window(xlim, ylim, "", xaxs = xaxs, yaxs = yaxs, asp = asp) if (!is.matrix(z) || nrow(z) <= 1 || ncol(z) <= 1) stop("no proper 'z' matrix specified") if (!is.double(z)) storage.mode(z) <- "double" .Internal(filledcontour(as.double(x), as.double(y), z, as.double(levels), col = col)) #AME 1/15/2014: in R 3.0, should be # .filled.contour(as.double(x), as.double(y), z, as.double(levels), # col = col) if (missing(plot.axes)) { if (axes) { title(main = "", xlab = "", ylab = "") Axis(x, side = 1) Axis(y, side = 2) } } else plot.axes if (frame.plot) box() if (missing(plot.title)) title(...) else plot.title invisible() } This happens if you use a non-standard API. You are allowed to do that, but cannot expect that it is maintained. The C code underlying base graphics has been migrated to the graphics package (and hence no longer uses .Internal() calls).
  6. 6. Reproducible Traceable Usable Comparable
  7. 7. ©LonSchleining

×