as.colorSpec: Convert into 'colorSpec::colorSpec' objects

mspct2colorSpecR Documentation

Convert into 'colorSpec::colorSpec' objects


Convert spectral objects (xxxx_spct, xxxx_mspct) as defined in package 'photobiology' into colorSpec objects preserving as much information as possible.


mspct2colorSpec(x, = NULL, multiplier = 1, ...)

spct2colorSpec(x, = NULL, multiplier = 1, ...)

chroma_spct2colorSpec(x, = NULL, multiplier = 1, ...)

## S3 method for class 'generic_mspct'
as.colorSpec(x, = NULL, multiplier = 1, ...)

## S3 method for class 'generic_spct'
as.colorSpec(x, = NULL, multiplier = 1, ...)

## S3 method for class 'chroma_spct'
as.colorSpec(x, = NULL, multiplier = 1, ...)



R object

character The name of the variable to read spectral data from.


numeric A multiplier to be applied to the 'spc' data to do unit or scale conversion.


currently ignored.

Methods (by class)

  • as.colorSpec(generic_spct):

  • as.colorSpec(chroma_spct):


Always check the sanity of the returned data values, as guessing is needed when matching the different classes, and the functions defined here are NOT guaranteed to return valid data without help from the user through optional function arguments.


Objects of class colorSpec::colorSpec do not contain metadata or class data from which the units of expression could be obtained. When using this function the user needs to use parameter multiplier to convert the data to what is expected by the object constructors defined in package 'photobiology' but should only rarely need to use parameter to select the quantity.

colorSpec::colorSpec objects may use memory more efficiently than spectral objects of the classes for collections of spectra defined in package 'photobiology' as wavelengths are assumed to be the same for all member spectra, and stored only once while this assumption is not made for collections of spectra, allowing different wavelengths and lengths for the component spectra. Wavelengths are stored for each spectrum, but as spectral classes are derived from 'tbl_df' in many cases no redundant copies of wavelength data will be made in memory in spite of the more flexible semantics of the objects.


if (requireNamespace("colorSpec", quietly = TRUE)) {
  as.colorSpec(filter_mspct(list(polyester.spct, yellow_gel.spct)))

photobiologyInOut documentation built on Aug. 15, 2022, 9:09 a.m.