stat_wl_strip
computes color definitions according to human vision and
by default plots a narrow, guide-like colour gradient strip based on
wavelength. x
-scale transformations and axis flipping are
currently not supported.
stat_wl_strip(
mapping = NULL,
data = NULL,
geom = "rect",
position = "identity",
...,
by.group = FALSE,
w.band = NULL,
length.out = 150,
chroma.type = "CMF",
na.rm = TRUE,
show.legend = FALSE,
inherit.aes = TRUE
)wl_guide(
mapping = NULL,
data = NULL,
position = "identity",
...,
by.group = FALSE,
chroma.type = "CMF",
w.band = NULL,
length.out = 150,
ymin = -Inf,
ymax = Inf,
na.rm = FALSE,
show.legend = FALSE,
inherit.aes = TRUE
)
generic_spect object with new x
values plus other computed
variables described below.
The aesthetic mapping, usually constructed with
aes
or aes_
. Only needs to be
set at the layer level if you are overriding the plot defaults.
A layer specific dataset - only needed if you want to override the plot defaults.
The geometric object to use display the data.
The position adjustment to use for overlapping points on this layer.
other arguments passed on to layer
. This
can include aesthetics whose values you want to set, not map. See
layer
for more details.
logical flag If TRUE repeated identical layers are added
for each group within a plot panel as needed for animation. If
FALSE
, the default, a single layer is added per panel.
waveband object or a list of such objects or NULL.
The number of steps to use to simulate a continuous range of colours when w.band == NULL.
character one of "CMF" (color matching function) or "CC"
(color coordinates) or a chroma_spct
object.
a logical value indicating whether NA values should be stripped before the computation proceeds.
logical. Should this layer be included in the legends?
NA
, the default, includes if any aesthetics are mapped. FALSE
never includes, and TRUE
always includes.
If FALSE
, overrides the default aesthetics, rather
than combining with them. This is most useful for helper functions that
define both data and aesthetics and shouldn't inherit behaviour from the
default plot specification, e.g. borders
.
numeric used as aesthetics for plotting the guide.
(w.low + wl.high) / 2
boundary of waveband
boundary of waveband
color corresponding to wavelength
color corresponding to waveband
label of w.band
Set by the statistic and available to geoms.
..x..
as.character(..wb.f..)
..wl.low..
..wl.high..
..wb.color..
Required by the statistic and need to be set with aes()
.
numeric, wavelength in nanometres
By default stat_wl_strip()
uses a panel function and ignores
grouping as needed for annotation of layers supporting free axis scales.
Passing by.group = TRUE
as argument changes this behaviour adding
the same layer repeatedly for each group as needed for constructing
animated plots with functions from package 'gganimate'.
Function wl_guide()
is a conveneince wrapper on
stat_wl_strip()
that also adds the required
scale_fill_identity()
.
As colours are returned as RGB colour definitions, depending on the
geometry used the use of scale_fill_identity
and/or scale_colour_identity
will be necessary for
the correct colours to be displayed in the plot.
color_of
and
fast_color_of_wl
, which are used in the
implementation.
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_wb_total()
,
stat_wl_summary()
# ggplot() methods for spectral objects set a default mapping for x and y.
ggplot(sun.spct) +
geom_line() +
stat_wl_strip(ymax = -0.02, ymin = -0.04) +
scale_fill_identity()
# on some graphic devices the output may show spurious vertical lines
ggplot(sun.spct) +
wl_guide(alpha = 0.33, color = NA) +
geom_line()
Run the code above in your browser using DataLab