Create a summary plot of data measured by an acoustic doppler profiler. Note
that if the object is of the AD2CP variety, the present function works
plotAD2CP(), and that means that
which is handled very
differently than is the case here.
# S4 method for adp plot( x, which, j, col, breaks, zlim, titles, lwd = par("lwd"), type = "l", ytype = c("profile", "distance"), drawTimeRange = getOption("oceDrawTimeRange"), useSmoothScatter, missingColor = "gray", mgp = getOption("oceMgp"), mar = c(mgp + 1.5, mgp + 1.5, 1.5, 1.5), mai.palette = rep(0, 4), tformat, marginsAsImage = FALSE, cex = par("cex"), cex.axis = par("cex.axis"), cex.lab = par("cex.lab"), xlim, ylim, control, useLayout = FALSE, coastline = "coastlineWorld", span = 300, main = "", grid = FALSE, grid.col = "darkgray", grid.lty = "dotted", grid.lwd = 1, debug = getOption("oceDebug"), ... )
an adp object.
list of desired plot types. These are graphed in panels
running down from the top of the page. If
which is not given,
the plot will show images of the distance-time dependence of velocity
for each beam. See “Details” for the meanings of various values of
optional string specifying a sub-class of
Nortek Aquadopp profilers, this may either be
"default" (or missing)
to get the main signal, or
"diagnostic" to get a diagnostic
signal. For Nortek AD2CP profiles, this may be any one of
"average" (or missing) for averaged data,
for burst data, or
"interleaved burst" for interleaved burst data;
more data types are provided by that instrument, and may be added here
at some future time.
optional indication of color(s) to use. If not provided, the
default for images is
oce.colorsPalette(128,1), and for lines and
points is black.
optional breaks for color scheme
a range to be used as the
zlim parameter to the
imagep() call that is used to create the image. If omitted,
zlim is set for each panel individually, to encompass the data of the
panel and to be centred around zero. If provided as a two-element vector,
then that is used for each panel. If provided as a two-column matrix, then
each panel of the graph uses the corresponding row of the matrix; for
zlim=rbind(c(-1,1),c(-1,1),c(-.1,.1)) might make
which=1:3, so that the two horizontal velocities have one
scale, and the smaller vertical velocity has another.
optional vector of character strings to be used as labels for
the plot panels. For images, these strings will be placed in the right hand
side of the top margin. For timeseries, these strings are ignored. If this
is provided, its length must equal that of
if the plot is of a time-series or scattergraph format with lines, this is used in the usual way; otherwise, e.g. for image formats, this is ignored.
if the plot is of a time-series or scattergraph format, this is
used in the usual way, e.g.
"l" for lines, etc.; otherwise, as for
image formats, this is ignored.
character string controlling the type of the y axis for images
(ignored for time series). If
"distance", then the y axis will be
distance from the sensor head, with smaller distances nearer the bottom of
the graph. If
"profile", then this will still be true for
upward-looking instruments, but the y axis will be flipped for
downward-looking instruments, so that in either case, the top of the graph
will represent the sample nearest the sea surface.
boolean that applies to panels with time as the horizontal axis, indicating whether to draw the time range in the top-left margin of the plot.
boolean that indicates whether to use
smoothScatter() in various plots, such as
not provided a default is used, with
smoothScatter() being used
if there are more than 2000 points to plot.
color used to indicate
NA values in images (see
imagep()); set to
NULL to avoid this indication.
A 3-element numerical vector used with
to control the spacing of axis elements. The default is tighter than the R default.
A 4-element numerical vector used with
to control the plot margins. The default is tighter than the R default.
margins, in inches, to be added to those calculated for the palette; alter from the default only with caution
TRUE to put a wide margin to the right
of time-series plots, even if there are no images in the
(The margin is made wide if there are some images in the sequence.)
numeric character expansion factor for plot symbols; see
character expansion factors for axis numbers and axis names; see
optional 2-element list for
xlim, or 2-column matrix, in
which case the rows are used, in order, for the panels of the graph.
optional 2-element list for
ylim, or 2-column matrix, in
which case the rows are used, in order, for the panels of the graph.
optional list of parameters that may be used for different
plot types. Possibilities are
drawBottom (a boolean that indicates
whether to draw the bottom) and
bin (a numeric giving the index of
the bin on which to act, as explained in “Details”).
FALSE to prevent using
to set up the plot. This is needed if the call is to be part of a sequence
set up by e.g.
coastline object, or a character string naming
one. This is used only for
which="map". See notes at
plot,ctd-method() for more information on built-in coastlines.
approximate span of map in km
main title for plot, used just on the top panel, if there are several panels.
TRUE, a grid will be drawn for each panel. (This
argument is needed, because calling
grid() after doing a
sequence of plots will not result in useful results for the individual
color of grid
line type of grid
line width of grid
an integer specifying whether debugging information is
to be printed during the processing. This is a general parameter that
is used by many
oce functions. Generally, setting
turns off the printing, while higher values suggest that more information
be printed. If one function calls another, it usually reduces the value of
debug first, so that a user can often obtain deeper debugging
by specifying higher
optional arguments passed to plotting functions. For example,
despike=TRUE will cause time-series panels to be de-spiked
despike(). Another common action is to set the color for
missing values on image plots, with the argument
imagep()). Note that it is an error to give
..., if the formal argument
zlim was also given, because they
could contradict each other.
A list is silently returned, containing
values that can be used by
oce.grid() to add a grid to the plot.
The plot may have one or more panels, with the content being controlled by
"u4") yield a
distance-time image plot of a velocity component. If
x is in
beam coordinates (signalled by
metadata$oce.coordinate=="beam"), this will be the beam velocity,
b etc. If
x is in xyz coordinates (sometimes
called frame coordinates, or ship coordinates), it will be the velocity
component to the right of the frame or ship (labelled
x is in
"enu" coordinates, the image will show the
the eastward component (labelled
x is in
"other" coordinates, it will be component corresponding to east,
after rotation (labelled
u\'). Note that the coordinate is set by
read.adp(), or by
distance-time images of backscatter intensity of the respective beams. (For
data derived from Teledyne-RDI instruments, this is the item called ``echo
distance-time images of signal quality for the respective beams. (For RDI
data derived from instruments, this is the item called ``correlation
which="map" draw a map of location(s).
distance-time images of percent-good for the respective beams. (For data
derived from Teledyne-RDI instruments, which are the only instruments that
yield this item, it is called ``percent good.'')
which="vg") yield distance-time
images of the vertical beam fields for a 5 beam "SentinelV" ADCP
from Teledyne RDI.
which="vertical" yields a two panel distance-time
image of vertical beam velocity and amplitude.
which="salinity") yields a time-series plot
which="temperature") yields a time-series
plot of temperature.
which="pressure") yields a time-series plot
which="heading") yields a time-series plot
of instrument heading.
which="pitch") yields a time-series plot of
which="roll") yields a time-series plot of
which=19 yields a time-series plot of distance-averaged
velocity for beam 1, rightward velocity, eastward velocity, or
rotated-eastward velocity, depending on the coordinate system.
which=20 yields a time-series of distance-averaged velocity for
beam 2, foreward velocity, northward velocity, or rotated-northward
velocity, depending on the coordinate system.
which=21 yields a time-series of distance-averaged velocity for
beam 3, up-frame velocity, upward velocity, or rotated-upward velocity,
depending on the coordinate system.
which=22 yields a time-series of distance-averaged velocity for
beam 4, for
beam coordinates, or velocity estimate, for other
coordinates. (This is ignored for 3-beam data.)
which=23) yields a progressive-vector diagram in the horizontal
plane, plotted with
asp=1. Normally, the depth-averaged velocity
components are used, but if the
control list contains an item named
bin, then the depth bin will be used (with an error resulting if the
bin is out of range).
which=24 yields a time-averaged profile of the first component
of velocity (see
which=19 for the meaning of the component, in
various coordinate systems).
which=25 as for 24, but the second component.
which=26 as for 24, but the third component.
which=27 as for 24, but the fourth component (if that makes
sense, for the given instrument).
"uv" yields velocity plot in the horizontal
u. If the number of data points is small, a
scattergraph is used, but if it is large,
"uv+ellipse" as the
"uv" case, but
with an added indication of the tidal ellipse, calculated from the eigen
vectors of the covariance matrix.
"uv+ellipse+arrow" as the
"uv+ellipse" case, but with an added arrow indicating the mean
"bottomRange" for average bottom range from
all beams of the instrument.
"bottomRange4") for bottom range from beams 1 to 4.
"bottomVelocity" for average bottom velocity
from all beams of the instrument.
"bottomVelocity4") for bottom velocity from beams 1 to 4.
"heaving") for time-integrated,
depth-averaged, vertical velocity, i.e. a time series of heaving.
"soundSpeed") for a time series of sound speed.
In addition to the above, the following shortcuts are defined:
which="velocity" equivalent to
(depending on the device) for velocity components.
which="amplitude" equivalent to
5:8 (depending on the device) for backscatter intensity
which="quality" equivalent to
(depending on the device) for quality components.
which="hydrography" equivalent to
for temperature and pressure.
which="angles" equivalent to
heading, pitch and roll.
The color scheme for image plots (
which in 1:12) is provided by the
col argument, which is passed to
image() to do the actual
plotting. See “Examples” for some comparisons.
A common quick-look plot to assess mooring movement is to use
which=15:18 (pressure being included to signal the tide, and tidal
currents may dislodge a mooring or cause it to settle).
plot,adp-method uses a
zlim value for the
image() that is constructed to contain all the data, but to be
symmetric about zero. This is done on a per-panel basis, and the scale is
plotted at the top-right corner, along with the name of the variable being
plotted. You may also supply
zlim as one of the ... arguments,
but be aware that a reasonable limit on horizontal velocity components is
unlikely to be of much use for the vertical component.
A good first step in the analysis of measurements made from a moored device
d, say) is to do
plot(d, which=14:18). This shows
time series of water properties and sensor orientation, which is helpful in
deciding which data to trim at the start and end of the deployment, because
they were measured on the dock or on the ship as it travelled to the mooring
Other functions that plot oce data:
Other things related to adp data: