autoplot.filter_spct {ggspectra} | R Documentation |
Create a complete ggplot for a filter spectrum.
Description
These methods return a ggplot object with an annotated plot of a filter_spct object or of the spectra contained in a filter_mspct object.
Usage
## S3 method for class 'filter_spct'
autoplot(
object,
...,
w.band = getOption("photobiology.plot.bands", default = list(UVC(), UVB(), UVA(),
PhR())),
range = NULL,
norm = getOption("ggspectra.norm", default = "update"),
plot.qty = getOption("photobiology.filter.qty", default = "transmittance"),
pc.out = FALSE,
label.qty = NULL,
span = NULL,
wls.target = "HM",
annotations = NULL,
geom = "line",
time.format = "",
tz = "UTC",
text.size = 2.5,
chroma.type = "CMF",
idfactor = NULL,
facets = FALSE,
ylim = c(NA, NA),
object.label = deparse(substitute(object)),
na.rm = TRUE
)
## S3 method for class 'filter_mspct'
autoplot(
object,
...,
range = NULL,
norm = getOption("ggspectra.norm", default = "update"),
plot.qty = getOption("photobiology.filter.qty", default = "transmittance"),
pc.out = FALSE,
plot.data = "as.is",
idfactor = TRUE,
facets = FALSE,
object.label = deparse(substitute(object)),
na.rm = TRUE
)
Arguments
object |
a filter_spct object or a filter_mspct object. |
... |
in the case of collections of spectra, additional arguments passed to the autoplot methods for individual spectra, otherwise currently ignored. |
w.band |
a single waveband object or a list of waveband objects. |
range |
an R object on which range() returns a vector of length 2, with min and max wavelengths (nm). |
norm |
numeric Normalization wavelength (nm) or character string "max",
or "min" for normalization at the corresponding wavelength, "update" to
update the normalization after modifying units of expression, quantity
or range but respecting the previously used criterion, or "skip" to force
return of |
plot.qty |
character string one of "transmittance" or "absorbance". |
pc.out |
logical, if TRUE use percents instead of fraction of one. |
label.qty |
character string giving the type of summary quantity to use for labels, one of "mean", "total", "contribution", and "relative". |
span |
a peak is defined as an element in a sequence which is greater than all other elements within a window of width span centred at that element. |
wls.target |
numeric vector indicating the spectral quantity values for
which wavelengths are to be searched and interpolated if need. The
|
annotations |
a character vector. For details please see sections Plot Annotations and Title Annotations. |
geom |
character The name of a ggplot geometry, currently only
|
time.format |
character Format as accepted by |
tz |
character Time zone to use for title and/or subtitle. |
text.size |
numeric size of text in the plot decorations. |
chroma.type |
character one of "CMF" (color matching function) or "CC"
(color coordinates) or a |
idfactor |
character Name of an index column in data holding a
|
facets |
logical or integer Indicating if facets are to be created for
the levels of |
ylim |
numeric y axis limits, |
object.label |
character The name of the object being plotted. |
na.rm |
logical. |
plot.data |
character Data to plot. Default is "as.is" plotting one line per spectrum. When passing "mean", "median", "sum", "prod", var", "sd", "se" as argument all the spectra must contain data at the same wavelength values. |
Details
The ggplot object returned can be further manipulated and added to. Except when no annotations are added, limits are set for the x-axis and y-axis scales. The y scale limits are expanded to include all data, or at least to the range of expected values. The plotting of absorbance is an exception as the y-axis is not extended past 6 a.u. In the case of absorbance, values larger than 6 a.u. are rarely meaningful due to stray light during measurement. However, when transmittance values below the detection limit are rounded to zero, and later converted into absorbance, values Inf a.u. result, disrupting the plot. Scales are further expanded so as to make space for the annotations.
Value
a ggplot
object.
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.
Title Annotations
metadata retrieved from object object
is
paased to ggplot2::ggtitle()
as arguments for title
,
subtitle
and caption
. The specification for the title is
passed as argument to annotations
, and consists in the keyword
title
with optional modifiers selecting the kind of metatdata to
use, separated by colons. Up to three keywords separated by colons are
accepted, and correspond to title, subtitle and caption. The recognized
keywords are: "objt"
, "class"
, "what"
, "when"
,
"where"
, "how"
, "inst.name"
, "inst.sn"
,
"comment"
and "none"
are recognized as modifiers to
"title"
; "none"
is a placeholder. Default is
"title:objt"
or no title depending on the context.
See Also
normalize
,
filter_spct
,
waveband
,
photobiologyWavebands-package
and
autoplot
Other autoplot methods:
autoplot.calibration_spct()
,
autoplot.cps_spct()
,
autoplot.object_spct()
,
autoplot.raw_spct()
,
autoplot.reflector_spct()
,
autoplot.response_spct()
,
autoplot.source_spct()
,
autoplot.waveband()
,
set_annotations_default()
Examples
autoplot(yellow_gel.spct)
autoplot(yellow_gel.spct, geom = "spct")
autoplot(yellow_gel.spct, plot.qty = "transmittance")
autoplot(yellow_gel.spct, plot.qty = "absorptance")
autoplot(yellow_gel.spct, plot.qty = "absorbance")
autoplot(yellow_gel.spct, pc.out = TRUE)
autoplot(yellow_gel.spct, annotations = c("+", "wls"))
two_filters.mspct <-
filter_mspct(list("Yellow gel" = yellow_gel.spct,
"Polyester film" = polyester.spct))
autoplot(two_filters.mspct)
autoplot(two_filters.mspct, idfactor = "Spectra")
autoplot(two_filters.mspct, facets = TRUE)