Tracers in 2D {OceanView} | R Documentation |
tracers2D
plots a tracer distribution using traditional R graphics.
The topography can be defined when calling this function.
tracers2Drgl
plots a tracer distribution in open-GL graphics.
A suitable topography has to be created before calling this function.
tracers2D(x, y, colvar = NULL, ..., col = NULL, NAcol = "white", colkey = NULL, mask = NULL, image = FALSE, contour = FALSE, clim = NULL, clab = NULL) tracers2Drgl(x, y, colvar = NULL, ..., col = NULL, NAcol = "white", breaks = NULL, colkey = FALSE, clim = NULL, clab = NULL)
x, y |
Vectors with x- and y-coordinates of the tracers. Should be of equal length. |
colvar |
The variable used for coloring. It need
not be present, but if specified, it should be a vector of
dimension equal to |
col |
Colors to be used for coloring each individual point (if colvar not
specified) or that define the colors as specified by the
|
NAcol |
Colors to be used for |
breaks |
a set of finite numeric breakpoints for the colors; must have one more breakpoint than color and be in increasing order. Unsorted vectors will be sorted, with a warning. |
colkey |
A logical, The default is to draw the color key on side = 4, i.e. in the right margin.
If |
contour, image |
If |
clim |
Only if |
clab |
Only if |
mask |
A
|
... |
additional arguments passed to the plotting method scatter2D. The arguments after ... must be matched exactly. |
returns nothing
Karline Soetaert <karline.soetaert@nioz.nl>
tracers3D for plotting time series of tracer distributions in 3D
Ltrans for the output of a particle tracking model
# save plotting parameters pm <- par("mfrow") ## ======================================================================= ## Create topography, data ## ======================================================================= # The topographic surface x <- seq(-pi, pi, by = 0.2) y <- seq(0, pi, by = 0.1) M <- mesh(x, y) z <- with(M, sin(x)*sin(y)) # Initial condition xi <- c(0.125 * rnorm(100) - pi/2, 0.125 * rnorm(100) - pi/4) yi <- 0.25 * rnorm(200) + pi/2 # the species species <- c(rep(1, 100), rep(2, 100)) # set initial conditions xp <- xi; yp <- yi ## ======================================================================= ## using a mask and contour ## ======================================================================= Z <- z; Z[abs(Z) < 0.1] <- NA par(mfrow = c(2, 2)) for (i in 1:4) { # update tracer distribution xp <- xp + 0.25 * rnorm(200) yp <- yp + 0.025 * rnorm(200) # plot new tracer distribution tracers2D(xp, yp, colvar = species, pch = ".", cex = 5, main = paste("timestep ", i), col = c("orange", "blue"), colkey = list(side = 1, length = 0.5, labels = c("sp1","sp2"), at = c(1.25, 1.75), dist = 0.075), NAcol = "black", mask = list(x = x, y = y, z = Z), contour = list(x = x, y = y, z = Z) ) } ## ======================================================================= ## using image and contour ## ======================================================================= for (i in 1:4) { # update tracer distribution xp <- xp + 0.25 * rnorm(200) yp <- yp + 0.025 * rnorm(200) # plot new tracer distribution tracers2D(xp, yp, colvar = species, pch = ".", cex = 5, main = paste("timestep ", i), col = c("orange", "blue"), colkey = list(side = 1, length = 0.5, labels = c("sp1","sp2"), at = c(1.25, 1.75), dist = 0.075), NAcol = "black", contour = list(x = x, y = y, z = z), image = list(x = x, y = y, z = z, colkey = TRUE)) } ## ======================================================================= ## rgl tracer plot ## ======================================================================= # here the image has to be drawn first image2Drgl(x = x, y = y, z = z) # set initial conditions xp <- xi; yp <- yi nstep <- 40 for (i in 1:nstep) { # update tracer distribution xp <- xp + 0.25 * rnorm(200) yp <- yp + 0.025 * rnorm(200) # plot new tracer distribution n tracers2Drgl(xp, yp, colvar = species, cex = 1, main = paste("timestep ", i), col = c("orange", "blue")) } # reset plotting parameters par(mfrow = pm)