Plot adv data.

## Usage

```
# S4 method for class 'adv'
plot(
x,
which = c(1:3, 14, 15),
col,
titles,
type = "l",
lwd = par("lwd"),
drawTimeRange = getOption("oceDrawTimeRange"),
drawZeroLine = FALSE,
useSmoothScatter,
mgp = getOption("oceMgp"),
mar = c(mgp[1] + 1.5, mgp[1] + 1.5, 1.5, 1.5),
tformat,
marginsAsImage = FALSE,
cex = par("cex"),
cex.axis = par("cex.axis"),
cex.lab = par("cex.lab"),
cex.main = par("cex.main"),
xlim,
ylim,
brushCorrelation,
colBrush = "red",
main = "",
debug = getOption("oceDebug"),
...
)
```

## Arguments

- x
an adv object.

- which
List of desired plot types. These are graphed in panels running down from the top of the page. See “Details” for the meanings of various values of

`which`

.- col
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.- titles
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

`which`

.- type
Type of plot, as for

`plot()`

.- lwd
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.

- drawTimeRange
Logical value 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.

- drawZeroLine
Logical value indicating whether to draw zero lines on velocities.

- useSmoothScatter
Logical value indicating whether to use

`smoothScatter()`

in various plots, such as`which="uv"`

. If not provided a default is used, with`smoothScatter()`

being used if there are more than 2000 points to plot.- 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")`

.- tformat
Optional argument passed to

`oce.plot.ts()`

, for plot types that call that function. (See`strptime()`

for the format used.)- marginsAsImage
Logical value indicating whether to put a wide margin to the right of time-series plots, matching the space used up by a palette in an

`imagep()`

plot.- cex
numeric character expansion factor for plot symbols; see

`par()`

.- cex.axis, cex.lab, cex.main
character expansion factors for axis numbers, axis names and plot titles; see

`par()`

.- xlim
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.- ylim
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.- brushCorrelation
Optional number between 0 and 100, indicating a per-beam correlation threshold below which data are to be considered suspect. If the plot type is

`p`

, the suspect points (velocity, backscatter amplitude, or correlation) will be colored red; otherwise, this argument is ignored.- colBrush
Color to use for brushed (bad) data, if

`brushCorrelation`

is active.- main
Main title for plot, used just on the top panel, if there are several panels.

- debug
A flag that turns on debugging. Set to 1 to get a moderate amount of debugging information, or to 2 to get more.

- ...
Optional arguments passed to plotting functions.

## Details

Creates a multi-panel summary plot of data measured by an ADV.
The panels are controlled by the `which`

argument. (Note the
gaps in the sequence, e.g. 4 and 8 are not used.)

`which=1`

to`3`

(or`"u1"`

to`"u3"`

) yield timeseries of the first, second, and third components of velocity (in beam, xyz or enu coordinates).`which=4`

is not permitted (since ADV are 3-beam devices)`which=5`

to`7`

(or`"a1"`

to`"a3"`

) yield timeseries of the amplitudes of beams 1 to 3. (Note that the data are called`data$a[,1]`

,`data$a[,2]`

and`data$a[,3]`

, for these three timeseries.)`which=8`

is not permitted (since ADV are 3-beam devices)`which=9`

to`11`

(or`"q1"`

to`"q3"`

) yield timeseries of correlation for beams 1 to 3. (Note that the data are called`data$c[,1]`

,`data$c[,2]`

and`data$c[,3]`

, for these three timeseries.)`which=12`

is not permitted (since ADVs are 3-beam devices)`which=13`

is not permitted (since ADVs do not measure salinity)`which=14`

or`which="temperature"`

yields a timeseries of temperature.`which=15`

or`which="pressure"`

yields a timeseries of pressure.`which=16`

or`which="heading"`

yields a timeseries of heading.`which=17`

or`which="pitch"`

yields a timeseries of pitch.`which=18`

or`which="roll"`

yields a timeseries of roll.`which=19`

to`21`

yields plots of correlation versus amplitude, for beams 1 through 3, using`smoothScatter()`

.`which=22`

is not permitted (since ADVs are 3-beam devices)`which=23`

or`"progressive vector"`

yields a progressive-vector diagram in the horizontal plane, plotted with`asp=1`

, and taking beam1 and beam2 as the eastward and northward components of velocity, respectively.`which=28`

or`"uv"`

yields velocity plot in the horizontal plane, i.e.`u[2]`

versus`u[1]`

. If the number of data points is small, a scattergraph is used, but if it is large,`smoothScatter()`

is used.`which=29`

or`"uv+ellipse"`

as the`"uv"`

case, but with an added indication of the tidal ellipse, calculated from the eigen vectors of the covariance matrix.`which=30`

or`"uv+ellipse+arrow"`

as the`"uv+ellipse"`

case, but with an added arrow indicating the mean current.`which=50`

or`"analog1"`

plots a time series of the analog1 signal, if there is one.`which=51`

or`"analog2"`

plots a time series of the analog2 signal, if there is one.`which=100`

or`"voltage"`

plots the voltage as a timeseries, if voltage exists in the dataset.

In addition to the above, there are some groupings defined:

`which="velocity"`

equivalent to`which=1:3`

(three velocity components)`which="amplitude"`

equivalent to`which=5:7`

(three amplitude components)`which="backscatter"`

equivalent to`which=9:11`

(three backscatter components)`which="hydrography"`

equivalent to`which=14:15`

(temperature and pressure)`which="angles"`

equivalent to`which=16:18`

(heading, pitch and roll)

## See also

The documentation for adv explains the structure of ADV objects, and also outlines the other functions dealing with them.

Other functions that plot oce data:
`download.amsr()`

,
`plot,adp-method`

,
`plot,amsr-method`

,
`plot,argo-method`

,
`plot,bremen-method`

,
`plot,cm-method`

,
`plot,coastline-method`

,
`plot,ctd-method`

,
`plot,gps-method`

,
`plot,ladp-method`

,
`plot,landsat-method`

,
`plot,lisst-method`

,
`plot,lobo-method`

,
`plot,met-method`

,
`plot,odf-method`

,
`plot,rsk-method`

,
`plot,satellite-method`

,
`plot,sealevel-method`

,
`plot,section-method`

,
`plot,tidem-method`

,
`plot,topo-method`

,
`plot,windrose-method`

,
`plot,xbt-method`

,
`plotProfile()`

,
`plotScan()`

,
`plotTS()`

,
`tidem-class`

Other things related to adv data:
`[[,adv-method`

,
`[[<-,adv-method`

,
`adv`

,
`adv-class`

,
`advSontekAdrFileTrim()`

,
`applyMagneticDeclination,adv-method`

,
`beamName()`

,
`beamToXyz()`

,
`enuToOther()`

,
`enuToOtherAdv()`

,
`read.adv()`

,
`read.adv.nortek()`

,
`read.adv.sontek.adr()`

,
`read.adv.sontek.serial()`

,
`read.adv.sontek.text()`

,
`rotateAboutZ()`

,
`subset,adv-method`

,
`summary,adv-method`

,
`toEnu()`

,
`toEnuAdv()`

,
`velocityStatistics()`

,
`xyzToEnu()`

,
`xyzToEnuAdv()`