Functions to make scatter plots of scores or correlation loadings, and scatter or line plots of loadings.
scoreplot(object, …)
# S3 method for default
scoreplot(object, comps = 1:2, labels, identify = FALSE, type = "p",
xlab, ylab, …)
# S3 method for scores
plot(x, …)loadingplot(object, …)
# S3 method for default
loadingplot(object, comps = 1:2, scatter = FALSE, labels,
identify = FALSE, type, lty, lwd = NULL, pch, cex = NULL,
col, legendpos, xlab, ylab, pretty.xlabels = TRUE, xlim, …)
# S3 method for loadings
plot(x, …)
corrplot(object, comps = 1:2, labels, plotx = TRUE, ploty = FALSE,
radii = c(sqrt(1/2), 1), identify = FALSE, type = "p",
xlab, ylab, col, …)
an R object. The fitted model.
integer vector. The components to plot.
logical. Whether the loadings should be plotted as a scatter instead of as lines.
optional. Alternative plot labels or \(x\) axis labels. See Details.
locical. Whether to plot the \(X\) correlation
loadings. Defaults to TRUE
.
locical. Whether to plot the \(Y\) correlation
loadings. Defaults to FALSE
.
numeric vector, giving the radii of the circles drawn in
corrplot
. The default radii represent 50% and 100%
explained variance of the \(X\) variables by the chosen components.
logical. Whether to use identify
to
interactively identify points. See below.
character. What type of plot to make. Defaults to
"p"
(points) for scatter plots and "l"
(lines) for
line plots. See plot
for a complete list
of types (not all types are possible/meaningful for all plots).
vector of line types (recycled as neccessary). Line types can be
specified as integers or character strings (see par
for the details).
vector of positive numbers (recycled as neccessary), giving the width of the lines.
plot character. A character string or a vector of
single characters or integers (recycled as neccessary). See
points
for all alternatives.
numeric vector of character expansion sizes (recycled as neccessary) for the plotted symbols.
character or integer vector of colors for plotted lines and
symbols (recycled as neccessary). See par
for the details.
Legend position. Optional. Ignored if scatter
is
TRUE
. If present, a legend is drawn at the given position.
The position can be specified symbolically (e.g., legendpos =
"topright"
). This requires R >= 2.1.0. Alternatively, the
position can be specified explicitly (legendpos = t(c(x,y))
)
or interactively (legendpos = locator()
).
titles for \(x\) and \(y\) axes. Typically
character strings, but can be expressions or lists. See
title
for details.
logical. If TRUE
, loadingplot
tries to plot the \(x\) labels more nicely. See Details.
optional vector of length two, with the \(x\) limits of the plot.
a scores
or loadings
object. The scores or
loadings to plot.
further arguments sent to the underlying plot function(s).
The functions return whatever the underlying plot function (or
identify
) returns.
plot.scores
is simply a wrapper calling scoreplot
,
passing all arguments. Similarly for plot.loadings
.
scoreplot
is generic, currently with a default method that
works for matrices and any object for which scores
returns a matrix. The default scoreplot
method
makes one or more scatter plots of the scores,
depending on how many components are selected. If one or two
components are selected, and identify
is TRUE
, the
function identify
is used to interactively identify
points.
Also loadingplot
is generic, with a default method that works
for matrices and any object where loadings
returns a
matrix. If scatter
is TRUE
, the default method works exactly
like the default scoreplot
method. Otherwise, it makes a lineplot of the selected
loading vectors, and if identify
is TRUE
,
uses identify
to interactively identify points. Also,
if legendpos
is given, a legend is drawn at the position
indicated.
corrplot
works exactly like the default scoreplot
method, except that at least two components must be selected. The
“correlation loadings”, i.e. the correlations between each
variable and the selected components (see References), are plotted as
pairwise scatter plots, with concentric circles of radii given by
radii
. Each point corresponds to a variable. The squared
distance between the point and origin equals the fraction of the
variance of the variable explained by the components in the panel.
The default radii
corresponds to 50% and 100% explained
variance. By default, only the correlation loadings of the \(X\)
variables are plotted, but if ploty
is TRUE
, also the
\(Y\) correlation loadings are plotted.
scoreplot
, loadingplot
and corrplot
can also be
called through the plot method for mvr
objects, by specifying
plottype
as "scores"
, "loadings"
or
"correlation"
, respectively. See plot.mvr
.
The argument labels
can be a vector of labels or one of
"names"
and "numbers"
.
If a scatter plot is produced (i.e., scoreplot
, corrplot
, or
loadingplot
with scatter = TRUE
), the labels
are used instead of plot symbols for the points plotted. If
labels
is "names"
or "numbers"
, the row
names or row numbers of the matrix (scores, loadings or correlation
loadings) are used.
If a line plot is produced (i.e., loadingplot
), the labels are
used as \(x\) axis labels. If labels
is "names"
or
"numbers"
, the variable names are used as labels, the
difference being that with "numbers"
, the variable names are
converted to numbers, if possible. Variable names of the forms
"number" or "number text" (where the space is optional),
are handled.
The argument pretty.xlabels
is only used when labels
is
specified for a line plot. If TRUE
(default), the code tries
to use a ‘pretty’ selection of labels. If labels
is
"numbers"
, it also uses the numerical values of the labels for
horisontal spacing. If one has excluded parts of the spectral
region, one might therefore want to use pretty.xlabels = FALSE
.
Martens, H., Martens, M. (2000) Modified Jack-knife Estimation of Parameter Uncertainty in Bilinear Modelling by Partial Least Squares Regression (PLSR). Food Quality and Preference, 11(1--2), 5--16.
# NOT RUN {
data(yarn)
mod <- plsr(density ~ NIR, ncomp = 10, data = yarn)
## These three are equivalent:
# }
# NOT RUN {
scoreplot(mod, comps = 1:5)
plot(scores(mod), comps = 1:5)
plot(mod, plottype = "scores", comps = 1:5)
loadingplot(mod, comps = 1:5)
loadingplot(mod, comps = 1:5, legendpos = "topright") # With legend
loadingplot(mod, comps = 1:5, scatter = TRUE) # Plot as scatterplots
corrplot(mod, comps = 1:2)
corrplot(mod, comps = 1:3)
# }
Run the code above in your browser using DataLab