Creates a plot for a sea-level dataset, in one of two varieties. Depending on the length of which, either a single-panel or multi-panel plot is drawn. If there is just one panel, then the value of par used in plot,sealevel-method is retained upon exit, making it convenient to add to the plot. For multi-panel plots, par is returned to the value it had before the call.

# S4 method for sealevel
  which = 1:3,
  drawTimeRange = getOption("oceDrawTimeRange"),
  mgp = getOption("oceMgp"),
  mar = c(mgp[1] + 0.5, mgp[1] + 1.5, mgp[2] + 1, mgp[2] + 3/4),
  marginsAsImage = FALSE,
  debug = getOption("oceDebug"),



a sealevel object.


a numerical or string vector indicating desired plot types, with possibilities 1 or "all" for a time-series of all the elevations, 2 or "month" for a time-series of just the first month, 3 or "spectrum" for a power spectrum (truncated to frequencies below 0.1 cycles per hour, or 4 or "cumulativespectrum" for a cumulative integral of the power spectrum.


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.


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").


boolean, TRUE to put a wide margin to the right of time-series plots, matching the space used up by a palette in an imagep() plot.


a flag that turns on debugging, if it exceeds 0.


optional arguments passed to plotting functions.



Historical Note

Until 2020-02-06, sea-level plots had the mean value removed, and indicated with a tick mark and margin note on the right-hand side of the plot. This behaviour was confusing. The change did not go through the usual deprecation process, because the margin-note behaviour had not been documented.


The example refers to Hurricane Juan, which caused a great deal of damage to Halifax in 2003. Since this was in the era of the digital photo, a casual web search will uncover some spectacular images of damage, from both wind and storm surge. A map of the path of Hurricane Juan across Nova Scotia is at Landfall, very near the site of this sealevel gauge, was between 00:10 and 00:20 Halifax local time on Monday, Sept 29, 2003.

See also


library(oce) data(sealevel) ## local Halifax time is UTC + 4h juan <- as.POSIXct("2003-09-29 00:15:00", tz="UTC")+4*3600 plot(sealevel, which=1, xlim=juan+86400*c(-7, 7))
abline(v=juan, col='red')