plotTDR: Methods for plotting objects of class "TDR" and...

plotTDR,POSIXt,numeric-methodR Documentation

Methods for plotting objects of class "TDR" and "TDRcalibrate"

Description

Main plotting method for objects of these classes. Plot and optionally set zero-offset correction windows in TDR records, with the aid of a graphical user interface (GUI), allowing for dynamic selection of offset and multiple time windows to perform the adjustment.

Usage

## S4 method for signature 'POSIXt,numeric'
plotTDR(
  x,
  y,
  concurVars = NULL,
  xlim = NULL,
  depth.lim = NULL,
  ylab.depth = "depth (m)",
  concurVarTitles = deparse(substitute(concurVars)),
  sunrise.time = "06:00:00",
  sunset.time = "18:00:00",
  night.col = "gray60",
  dry.time = NULL,
  phase.factor = NULL
)

## S4 method for signature 'TDR,missing'
plotTDR(x, y, concurVars, concurVarTitles, ...)

## S4 method for signature 'TDRcalibrate,missing'
plotTDR(
  x,
  y,
  what = c("phases", "dive.model"),
  diveNo = seq(max(getDAct(x, "dive.id"))),
  ...
)

Arguments

x

POSIXct object with date and time, TDR, or TDRcalibrate object.

y

numeric vector with depth in m.

concurVars

matrix with additional variables in each column to plot concurrently with depth. For the (TDR,missing) and (TDRcalibrate,missing) methods, a character vector naming additional variables from the concurrentData slot to plot, if any.

xlim

POSIXct or numeric vector of length 2, with lower and upper limits of time to be plotted.

depth.lim

numeric vector of length 2, with the lower and upper limits of depth to be plotted.

ylab.depth

character string to label the corresponding y-axes.

concurVarTitles

character vector of titles to label each new variable given in concurVars.

sunrise.time, sunset.time

character string with time of sunrise and sunset, respectively, in 24 hr format. This is used for shading night time.

night.col

color for shading night time.

dry.time

subset of time corresponding to observations considered to be dry.

phase.factor

factor dividing rows into sections.

...

Arguments for the (POSIXt,numeric) method. For (TDRcalibrate,missing), these are arguments for the appropriate methods.

what

character: what aspect of the TDRcalibrate to plot, which selects the method to use for plotting.

diveNo

numeric vector or scalar with dive numbers to plot.

Value

If called with the interact argument set to TRUE, returns a list (invisibly) with as many components as sections of the record that were zero-offset corrected, each consisting of two further lists with the same components as those returned by locator.

Methods (by class)

  • x = POSIXt,y = numeric: Base method plotting numeric vector against POSIXt object

  • x = TDR,y = missing: Interactive graphical display of time-depth data, with zooming and panning capabilities.

  • x = TDRcalibrate,y = missing: plot selected aspects of TDRcalibrate object. Currently, two aspects have plotting methods:

    * phases (Optional arguments: concurVars, surface) Plots all dives, labelled by the activity phase they belong to. It produces a plot consisting of one or more panels; the first panel shows depth against time, and additional panels show other concurrent data in the object. Optional argument concurVars is a character vector indicating which additional components from the concurrentData slot to plot, if any. Optional argument surface is a logical: whether to plot surface readings.

    * dive.model Plots the dive model for the selected dive number (diveNo argument).

Author(s)

Sebastian P. Luque spluque@gmail.com, with many ideas from CRAN package sfsmisc.

See Also

calibrateDepth, .zoc

Examples

## Too long for checks

## Continuing the Example from '?calibrateDepth':
utils::example("calibrateDepth", package="diveMove",
               ask=FALSE, echo=FALSE, run.donttest=TRUE)
## Use interact=TRUE (default) to set an offset interactively
## Plot the 'TDR' object
plotTDR(getTime(divesTDR), getDepth(divesTDR))
plotTDR(divesTDR)

## Plot different aspects of the 'TDRcalibrate' object
plotTDR(dcalib)
plotTDR(dcalib, diveNo=19:25)
plotTDR(dcalib, what="dive.model", diveNo=25)
if (dev.interactive(orNone=TRUE)) {
    ## Add surface observations and interact
    plotTDR(dcalib, surface=TRUE)
    ## Plot one dive
    plotTDR(dcalib, diveNo=200)
}



diveMove documentation built on Nov. 10, 2022, 5:11 p.m.