Learn R Programming

ggspectra (version 0.3.15)

autoplot.waveband: Create a complete ggplot for a waveband descriptor.

Description

Construct a ggplot object with an annotated plot of a waveband object.

Usage

# S3 method for waveband
autoplot(
  object,
  ...,
  w.length = NULL,
  range = c(280, 800),
  fill = 0,
  span = NULL,
  wls.target = "HM",
  unit.in = getOption("photobiology.radiation.unit", default = "energy"),
  unit.out = unit.in,
  annotations = NULL,
  geom = "line",
  wb.trim = TRUE,
  norm = NA,
  text.size = 2.5,
  ylim = c(NA, NA),
  object.label = deparse(substitute(object)),
  na.rm = TRUE
)

Value

a ggplot object.

Arguments

object

a waveband object.

...

arguments passed along by name to autoplot.response_spct().

w.length

numeric vector of wavelengths (nm).

range

an R object on which range() returns a vector of length 2, with min annd max wavelengths (nm).

fill

value to use as response for wavelngths outside the waveband range.

span

a peak is defined as an element in a sequence which is greater than all other elements within a window of width span centered at that element.

wls.target

numeric vector indicating the spectral quantity values for which wavelengths are to be searched and interpolated if need. The character strings "half.maximum" and "half.range" are also accepted as arguments. A list with numeric and/or character values is also accepted.

unit.in, unit.out

the type of unit we assume as reference: "energy" or "photon" based for the waveband definition and the implicit matching response plotted.

annotations

a character vector. For details please see section Plot Annotations.

geom

character The name of a ggplot geometry, currently only "area", "spct" and "line".

wb.trim

logical. Passed to trim_wl. Relevant only when the waveband extends partly outside range.

norm

numeric or character Normalization wavelength (nm) or character string "max" or other criterion for normalization.

text.size

numeric size of text in the plot decorations.

ylim

numeric y axis limits,

object.label

character The name of the object being plotted.

na.rm

logical.

Plot Annotations

The recognized annotation names are: "summaries", "peaks", "peak.labels", "valleys", "valley.labels", "wls", "wls.labels", "colour.guide", "color.guide", "boxes", "segments", "labels". In addition, "+" is interpreted as a request to add to the already present default annotations, "-" as request to remove annotations and "=" or missing"+" and "-" as a request to reset annotations to those requested. If used, "+", "-" or "=" must be the first member of a character vector, and followed by one or more of the names given above. To simultaneously add and remove annotations one can pass a list containing character vectors each assembled as described. The vectors are applied in the order they appear in the list. To disable all annotations pass "" or c("=", "") as argument. Adding a variation of an annotation already present, replaces the existing one automatically: e.g., adding "peak.labels" replaces"peaks" if present.

Details

A response_spct object is created based on the waveband object. A waveband object can describe either a simple wavelength range or a (biological) spectral weighting function (BSWF). See autoplot.response_spct for additional details.

Effectiveness spectra are plotted expressing the spectral effectiveness either as \(1 mol^{-1} nm\) photons of \(1 J^{-1} nm\) which can be selected through formal argument unit.out. The value of unit.in has no effect on the result when uisng BSWFs, as BSWFs are defined based on a certain base of expression, which is enforced. In contrast, for wavebands which only define a wavelength range, changing the assumed reference irradiance units, changes the responsivity according to Plank's law.

Unused arguments are passed along, which means that other plot aspects can be controlled by providing arguments for the plot method of the response_spct class.

See Also

autoplot.response_spct, waveband.

Other autoplot methods: autoplot.calibration_spct(), autoplot.cps_spct(), autoplot.filter_spct(), autoplot.object_spct(), autoplot.raw_spct(), autoplot.reflector_spct(), autoplot.response_spct(), autoplot.source_spct(), set_annotations_default()

Examples

Run this code

autoplot(waveband(c(400, 500)))
autoplot(waveband(c(400, 500)), geom = "spct")

Run the code above in your browser using DataLab