oce.plot.sticks {oce} | R Documentation |
Draw a stick-plot diagram
oce.plot.sticks(x, y, u, v, yscale=1, add=FALSE, length=1/20, mgp=getOption("oce.mgp"), mar=c(mgp[1]+1,mgp[1]+1,1,1+par("cex")), ...)
x |
x coordinates of stick origins. |
y |
y coordinates of stick origins. |
u |
x coordinates of stick lengths. |
v |
y coordinates of stick lengths. |
yscale |
scale from u and v to y (see “Details”). |
add |
boolean, set TRUE to add to an existing plot. |
length |
value to be provided to arrows ; here, we set
a default that is smaller than normally used, because these plots tend
to be crowded in oceanographic applications. |
mgp |
3-element numerical vector to use for par(mgp) , and
also for par(mar) , computed from this. The default is
tighter than the R default, in order to use more space for the data
and less for the axes. |
mar |
value to be used with par("mar") . |
... |
graphical parameters passed down to arrows .
It is common, for example, to use smaller arrow heads than
arrows uses; see “Examples”. |
The arrows are drawn with directions on the graph that match
the directions indicated by the u
and v
components. The
arrow size is set relative to the units of the y
axis,
according to the value of yscale
, which has the unit of
v
divided by the unit of y
.
The interpretation of diagrams produced by oce.plot.sticks
can
be difficult, owing to overlap in the arrows. For this reason, it It
is often a good idea to smooth u
and v
before using this
function.
Dan Kelley
library(oce) # Flow from a point source n <- 16 x <- rep(0, n) y <- rep(0, n) theta <- seq(0, 2*pi, length.out=n) u <- sin(theta) v <- cos(theta) oce.plot.sticks(x, y, u, v, xlim=c(-2, 2), ylim=c(-2, 2)) rm(n, x, y, theta, u, v) # Oceanographic example data(air.hal) attach(air.hal) oce.plot.ts(t, temperature, type='l', ylim=c(0,25), ylab=resizable.label("T")) oce.plot.sticks(t, rep(5, length(u)), u, v, yscale=2, add=TRUE) legend("bottomright", legend="Velocity scale: 2 m/s per degC", bg="white") detach(air.hal)