
Last chance! 50% off unlimited learning
Sale ends in
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 plotSticks
can be
difficult, owing to overlap in the arrows. For this reason, it is often
a good idea to smooth u
and v
before using this function.
plotSticks(x, y, u, v, yscale = 1, add = FALSE, length = 1/20,
mgp = getOption("oceMgp"), mar = c(mgp[1] + 1, mgp[1] + 1, 1, 1 +
par("cex")), xlab = "", ylab = "", col = 1, ...)
x coordinates of stick origins.
y coordinates of stick origins. If not supplied, 0 will be used; if length is less than that of x, the first number is repeated and the rest are ignored.
x component of stick length.
y component of stick length.
scale from u and v to y (see “Description”).
boolean, set TRUE
to add to an existing plot.
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.
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.
value to be used with par("mar")
.
labels for the plot axes. The default is not to label them.
color of sticks, in either numerical or character format. This is
made to have length matching that of x
by a call to rep
,
which can be handy in e.g. colorizing a velocity field by day.
# NOT RUN {
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)
plotSticks(x, y, u, v, xlim=c(-2, 2), ylim=c(-2, 2))
rm(n, x, y, theta, u, v)
# Oceanographic example
data(met)
t <- met[["time"]]
u <- met[["u"]]
v <- met[["v"]]
p <- met[["pressure"]]
oce.plot.ts(t, p)
plotSticks(t, 99, u, v, yscale=25, add=TRUE)
# }
Run the code above in your browser using DataLab