photobiology 0.9.26

Changes from version 0.9.25, the most recent CRAN release, are:

  • Move 'tibble' from Imports: to Depends: as the spectral classes are derived from those exported by package 'tibble', making visibility of private specialized methods for tibbles always necessary when using this package.
  • Implement s_mean(), s_median(), s_range(), s_sd(), s_var(), s_sum(), s_prod() and s_mean_se() methods for collections of spectra that operate across spectra returning computed values at each wavelength—i.e. a single computed spectral object.
  • Add support for na.action = "replace" to methods na.omit() and na.exclude().
  • Add parameter na.rm to smooth_spct() methods, with unchanged default behaviour.
  • Fix bug in cps2irrad() not all attributes are copied.
  • Fix bug insmooth_spct(): metadata not copied to returned spectrum.
  • Fix bug in insert_hinges_spct(): metadata not fully copied to returned
  • Implement methods "wexler" and "goff.gratch" for water vapor pressure estimates. Add function water_vp2RH() and water_RH2vp() to compute relative humidity from water VP and air temperature.

Documentation web site at includes all help pages, with output from all examples, and vignettes in HTML format.
NOTE: The updated package is on its way to CRAN.

Please raise issues concerning bugs or enhancements to this package through Bitbucket

Package ‘patchwork’

Operators defined in package ‘patchwork’ can be used to combine multiple plots created with package ‘ggplot2’ or extensions to it, such as my own ‘ggpmisc’ and ‘ggspectra’. (The site ggplot2 extensions showcases at the moment more than 40 extensions to ‘ggplot2’.)

Package ‘patchwork’ has been developed by Thomas Lin Pedersen, and being relatively new, it is not yet in CRAN. It can be installed from the public Git repository at Github.

# install.packages("devtools")

The ‘ggplot2’ package provides a strong API for sequentially building up a plot, but does not concern itself with composition of multiple plots. ‘patchwork’ is a package that expands the API to allow for arbitrarily complex composition of plots by providing mathmatical operators for combining multiple plots. Other packages that address this need (but with a different approach) are ‘gridExtra’ and ‘cowplot’.

From the package’s DESCRIPTION.

Package ‘ggspectra’ provides function multiplot() for this purpose, but this function is minimalistic, with its most important handicap in its inability to independently align the plotting areas and axis labels of the composed plots.

An example using the operators / and & from ‘patchwork’ follows.

p <- autoplot(sun.spct) / 
  autoplot(polyester.spct, range = c(280, 800)) / 
  autoplot(sun.spct * polyester.spct)
png("three-plots.png", height = 800, width = 600)
print(p) & theme_bw()

photobiologyInOut 0.4.19

The main changes from version 0.4.18 the previous CRAN release, are:

  • Track reverted previous code breaking change in ‘readr’ (>= 1.3.0).

Because of a code breaking change in package ‘readr’ this version of ‘photobiologyInOut’ requires ‘readr’ >= 1.3.0 to be installed. Function read_oopi_data() from ‘photobiologyInOut’ < 0.4.19 will not work as expected under ‘readr’ >= 1.3.0. (I thank Jim Hester for making a pull request that solved the problem introduced by the change in ‘readr’.)

Documentation web site at

NOTE: This version of the package is on its way to CRAN.

Please raise issues concerning bugs or enhancements to this package through Bitbucket at