Learn R Programming

Cardinal (version 1.4.0)

plot-methods: Plot the Feature-Space of an Imaging Dataset

Description

Create and display plots in the feature space of an imaging dataset. This uses a formula interface inspired by the lattice graphics package.

Usage

"plot"(x, formula = ~ Feature, pixel, pixel.groups, groups = NULL, superpose = FALSE, strip = TRUE, key = FALSE, fun = mean, ..., xlab, xlim, ylab, ylim, layout, type = 'l', col = "black", subset = TRUE, lattice = FALSE)
"plot"(x, formula = ~ mz, pixel = pixels(x, coord=coord), pixel.groups, coord, plusminus, ..., type = if (centroided(x)) 'h' else 'l')
"plot"(x, formula, model = pData(modelData(x)), pixel, pixel.groups, superpose = TRUE, strip = TRUE, key = superpose, ..., xlab, ylab, column, col = if (superpose) rainbow(nlevels(pixel.groups)) else "black", lattice = FALSE)
"plot"(x, fold = 1:length(x), layout, ...)
"plot"(x, formula = substitute(mode ~ mz), mode = "loadings", type = 'h', ...)
"plot"(x, formula = substitute(mode ~ mz), mode = c("coefficients", "loadings", "weights", "projection"), type = 'h', ...)
"plot"(x, formula = substitute(mode ~ mz), mode = c("coefficients", "loadings", "Oloadings", "weights", "Oweights", "projection"), type = 'h', ...)
"plot"(x, formula = substitute(mode ~ mz), mode = c("centers", "tstatistics"), type = 'h', ...)
"plot"(x, formula = substitute(mode ~ mz), mode = c("centers", "betweenss", "withinss"), type = 'h', ...)

Arguments

x
An imaging dataset.
formula
A formula of the form 'y ~ x | g1 * g2 * ...' (or equivalently, 'y ~ x | g1 + g2 + ...'), indicating a LHS 'y' (on the y-axis) versus a RHS 'x' (on the x-axis) and conditioning variables 'g1, g2, ...'.

Usually, the LHS is not supplied, and the formula is of the form '~ x | g1 * g2 * ...', and the y-axis is implicityl assumed to be the feature vectors corresponding to each pixel in the imaging dataset specified by the object 'x'. However, a variable evaluating to a feature vector, or a sequence of such variables, can also be supplied.

The RHS is evaluated in fData(x) and should provide values for the x-axis.

The conditioning variables are evaluated in pData(x). These can be specified in the formula as 'g1 * g2 * ...'. The argument 'pixel.groups' allows an alternate way to specify a single conditioning variable. Conditioning variables specified using the formula interface will always appear on separate plots. This can be combined with 'superpose = TRUE' to both overlay plots based on a conditioning variable and use conditioning variables to create separate plots.

model
A vector or list specifying which fitted model to plot. If this is a vector, it should give a subset of the rows of modelData(x) to use for plotting. Otherwise, it should be a list giving the values of parameters in modelData(x).
pixel
The pixel or vector of pixels for which to plot the feature vectors. This is an expression that evaluates to a logical or integer indexing vector.
pixel.groups
An alternative way to express a single conditioning variable. This is a variable or expression to be evaluated in pData(x), expected to act as a grouping variable for the pixels specified by 'pixel', typically used to distinguish different regions of the imaging data for comparison. Feature vectors from pixels in the same pixel group will have 'fun' applied over them; 'fun' will be applied to each pixel group separately, usually for averaging. If 'superpose = FALSE' then these appear on separate plots.
groups
A variable or expression to be evaluated in fData(x), expected to act as a grouping variable for the features in the feature vector(s) to be plotted, typically used to distinguish different groups of features by varying graphical parameters like color and line type. By default, if 'superpose = FALSE', these appear overlaid on the same plot.
superpose
Should feature vectors from different pixel groups specified by 'pixel.groups' be superposed on the same plot?
strip
Should strip labels indicating the plotting group be plotting along with the each panel? Passed to 'strip' in xyplot.
key
A logical, or list containing components to be used as a key for the plot. This is passed to 'key' in levelplot if 'lattice = TRUE'.
fun
A function to apply over feature vectors grouped together by 'pixel.groups'. By default, this is used for averaging over pixels.
xlab
Character or expression giving the label for the x-axis.
ylab
Character or expression giving the label for the x-axis.
xlim
A numeric vector of length 2 giving the left and right limits for the x-axis.
ylim
A numeric vector of length 2 giving the lower and upper limits for the y-axis.
layout
The layout of the plots, given by a length 2 numeric as c(ncol, nrow). This is passed to levelplot if 'lattice = TRUE'. For base graphics, this defaults to one plot per page.
col
A specification for the default plotting color(s).
type
A character indicating the type of plotting.
subset
An expression that evaluates to a logical or integer indexing vector to be evaluated in fData(x).
lattice
Should lattice graphics be used to create the plot?
...
Additional arguments passed to the underlying plot or xyplot functions.
coord
A named vector or list giving the coordinate of the pixel to plot.
plusminus
If specified, a window of pixels surrounding the one given by coord will be included in the plot with fun applied over them, and this indicates the number of pixels to include on either side.
fold
What folds of the cross-validation should be plotted.
mode
What kind of results should be plotted. This is the name of the object to plot in the ResultSet object.
column
What columns of the results should be plotted. If the results are a matrix, this corresponds to the columns to be plotted, which can be indicated either by numeric index or by name.

See Also

image-methods

Examples

Run this code
data <- matrix(c(NA, NA, 1, 1, NA, NA, NA, NA, NA, NA, 1, 1, NA, NA, 
 NA, NA, NA, NA, NA, 0, 1, 1, NA, NA, NA, NA, NA, 1, 0, 0, 1, 
 1, NA, NA, NA, NA, NA, 0, 1, 1, 1, 1, NA, NA, NA, NA, 0, 1, 1, 
 1, 1, 1, NA, NA, NA, NA, 1, 1, 1, 1, 1, 1, 1, NA, NA, NA, 1, 
 1, NA, NA, NA, NA, NA, NA, 1, 1, NA, NA, NA, NA, NA), nrow=9, ncol=9)

set.seed(1)
sset <- generateImage(data, range=c(1000,5000), centers=c(3000,4000), resolution=100)

pData(sset)$pg <- factor(data[is.finite(data)], labels=c("black", "red"))
fData(sset)$fg <- factor(rep("bg", nrow(fData(sset))), levels=c("bg", "black", "red"))
fData(sset)$fg[2950 < fData(sset)$t & fData(sset)$t < 3050] <- "black"
fData(sset)$fg[3950 < fData(sset)$t & fData(sset)$t < 4050] <- "red"

plot(sset, pixel=1)

plot(sset, ~ t, pixel=1:ncol(sset))

plot(sset, ~ t | pg, pixel=1:ncol(sset), lattice=TRUE)

plot(sset, ~ t, pixel.groups=pg, pixel=1:ncol(sset), lattice=TRUE, superpose=TRUE)

plot(sset, ~ t | pg, groups=fg, pixel=1:ncol(sset), lattice=TRUE)

set.seed(1)
msset <- generateImage(data, as="MSImageSet", resolution=50)

plot(msset, pixel=1)

plot(msset, coord=list(x=3, y=1))

plot(msset, coord=list(x=3, y=1), plusminus=1)

plot(msset, coord=list(x=5, y=5), plusminus=c(2, 1))

Run the code above in your browser using DataLab