View source: R/stat-wb-total.R
stat_wb_total | R Documentation |
stat_wb_total
computes integral under a curve. It first integrates the
area under a spectral curve and also the mean expressed per nanaometre of
wavelength for each waveband in the input. Sets suitable default aesthetics
for "rect", "hline", "vline", "text" and "label" geoms displaying "totals"
per waveband.
stat_wb_total(
mapping = NULL,
data = NULL,
geom = "text",
w.band = NULL,
integral.fun = integrate_xy,
label.mult = 1,
chroma.type = "CMF",
label.fmt = "%.3g",
ypos.mult = 1.07,
ypos.fixed = NULL,
position = "identity",
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE,
...
)
mapping |
The aesthetic mapping, usually constructed with
|
data |
A layer specific dataset - only needed if you want to override the plot defaults. |
geom |
The geometric object to use display the data |
w.band |
a waveband object or a list of waveband objects or numeric vector of at least length two. |
integral.fun |
function on $x$ and $y$. |
label.mult |
numeric Scaling factor applied to y-integral values before conversion into character strings. |
chroma.type |
character one of "CMF" (color matching function) or "CC"
(color coordinates) or a |
label.fmt |
character string giving a format definition for converting
y-integral values into character strings by means of function
|
ypos.mult |
numeric Multiplier constant used to scale returned
|
ypos.fixed |
numeric If not |
position |
The position adjustment to use for overlapping points on this layer |
na.rm |
a logical value indicating whether NA values should be stripped before the computation proceeds. |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
... |
other arguments passed on to |
A data frame with one row for each waveband object in the argument
to w.band
. Wavebeand outside the range of the spectral data are
trimmed or discarded.
What it is named integral below is the result of appying integral.fun
,
with default integrate_xy
.
ymean multiplied by label.mult
and formatted
according to label.fmt
w.band-midpoint
w.band minimum
w.band maximum
data$y minimum
data$y maximum
data$y integral for the range of w.band
yint divided by wl_expanse(w.band)
ypos.fixed or top of data, adjusted by ypos.mult
color of the w.band
label of w.band
black_or_white(wb.color)
Set by the statistic and available to geoms.
..y.label..
..x..
..wb.xmin..
..wb.xmax..
..y.. - (..wb.ymax.. - ..wb.ymin..) * 0.03
..y.. + (..wb.ymax.. - ..wb.ymin..) * 0.03
..wb.ymean..
..wb.color..
Required by the statistic and need to be set with aes()
.
numeric, wavelength in nanometres
numeric, a spectral quantity
Other stats functions:
stat_color()
,
stat_find_qtys()
,
stat_find_wls()
,
stat_label_peaks()
,
stat_peaks()
,
stat_spikes()
,
stat_wb_box()
,
stat_wb_column()
,
stat_wb_contribution()
,
stat_wb_hbar()
,
stat_wb_irrad()
,
stat_wb_label()
,
stat_wb_mean()
,
stat_wb_relative()
,
stat_wb_sirrad()
,
stat_wl_strip()
,
stat_wl_summary()
library(photobiologyWavebands)
# ggplot() methods for spectral objects set a default mapping for x and y.
ggplot(sun.spct) +
geom_line() +
stat_wb_box(w.band = VIS()) +
stat_wb_total(w.band = VIS()) +
scale_fill_identity() + scale_color_identity()
ggplot(sun.spct) +
geom_line() +
stat_wb_box(w.band = UV_bands(), color = "white") +
stat_wb_total(w.band = UV_bands()) +
scale_fill_identity() + scale_color_identity()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.