Learn R Programming

spectacles (version 0.5-2-2)

plot-Spectra: Plots an object inheriting from the Spectra class

Description

The philosophy of this plotting routine is to provide a "quick'n'dirty" way to plot your spectra collection. For advanced visualisations, the use of melt_spectra alongside with ggplot2 or lattice is encouraged.

Usage

# S3 method for Spectra
plot(x,gg,gaps,attr,…)

# S3 method for Spectra plot(x, gg = FALSE, gaps = TRUE, attr = NULL, ...)

Arguments

x

an object of class "Spectra" or inheriting from this class

gg

if TRUE, uses the ggplot2 package to plot the data, if FALSE uses matplot from base graphics (much faster)

gaps

if TRUE, gaps in the spectra are not plotted

attr

attribute against which lines are coloured (only for gg = TRUE

...

additional parameters passed to matplot

Examples

Run this code
# NOT RUN {
# Loading example data
data(australia)
spectra(australia) <- sr_no ~ ... ~ 350:2500

# Default plotting method
plot(australia[1:5,])

# Default plot using ggplot2
plot(australia[1:5,], gg = TRUE)

# }
# NOT RUN {
# Managing gaps in the spectra
s <- cut(australia, wl =c(-1*450:500, -1*1800:2050))
plot(s, gaps = TRUE)
plot(s, gaps = FALSE)

# passing various options to matplot
plot(
  australia, 
  lty = 1:5, 
  col = 'blue', 
  xlab = 'foo', ylab = 'bar', 
  ylim = c(0.4,0.6), 
  main = 'my plot'
)

# Using colour ramps
plot(
  australia, 
  lty = 1, 
  col = rainbow(10), 
  main = "It is possible to create really ugly visualisations"
)

# Example using colours given by ColorBrewer (http://colorbrewer2.org/)
library(RColorBrewer)
plot(australia, lty = 1, col = brewer.pal(n = 8, name = "Set2"))

# Using an attribute to group spectra

# Generate some kind of factor
australia$fact <- sample(
  LETTERS[1:3], 
  size = nrow(australia), 
  replace = TRUE
) 

s <- aggregate_spectra(australia, fun = mean, id = 'fact')
plot(s, gg = TRUE, attr = 'fact')
# }

Run the code above in your browser using DataLab