Learn R Programming

hyperSpec (version 0.98-20150304)

initialize: Creating a hyperSpec Object Like other S4 objects, a hyperSpec object can be created by new. The hyperSpec object is then initialized using the given parameters.

Description

If option gc is TRUE, the initialization will have frequent calls to gc () which can help to avoid swapping or running out of memory.

Usage

"initialize"(.Object, spc = NULL, data = NULL, wavelength = NULL, labels = NULL)

Arguments

.Object
the new hyperSpec object.
spc
the spectra matrix.

spc does not need to be a matrix, it is converted explicitly by I (as.matrix (spc)).

data
data.frame, possibly with the spectra in data$spc, and further variates in more columns. A matrix can be entered as one column of a data frame by: data.frame (spc = I (as.matrix (spc))).

However, it will usually be more convenient if the spectra are given in spc

wavelength
The wavelengths corresponding to the columns of data. If no wavelengths are given, an appropriate vector is derived from the column names of data$spc. If this is not possible, 1 : ncol (data$spc) is used instead.
labels
A list containing the labels for the columns of the data slot of the hyperSpec object and for the wavelength (in label$.wavelength). The labels should be given in a form ready for the text-drawing functions (see plotmath).

If label is not given, a list containing NULL for each of the columns ofdata and wavelength is used.

See Also

new for more information on creating and initializing S4 objects.

plotmath on expressions for math annotations as for slot label.

hy.setOptions

Examples

Run this code
new ("hyperSpec")

spc <- matrix (rnorm (12), ncol = 4)
new ("hyperSpec", spc = spc)
new ("hyperSpec", data = data.frame (x = letters[1:3]),
     spc = spc)

colnames (spc) <- 600:603
new ("hyperSpec", spc = spc)  # wavelength taken from colnames (spc)

# given wavelengths precede over colnames of spc
new ("hyperSpec", spc = spc, wavelength = 700:703)

# specifying labels
h <- new ("hyperSpec", spc = spc, data = data.frame (pos = 1 : 3),
          label = list (spc = "I / a.u.",
                        .wavelength = expression (tilde (nu) / cm^-1),
                        pos = expression ("/" (x, mu*m)))
)

plot (h)
plotc (h, spc ~ pos)

Run the code above in your browser using DataLab