Plots the smoothed values for an observed response
and, optionally, the unsmoothed
observed response
using plotProfiles
. Depending on the setting of
trait.types
(response
, AGR
or RGR
), the computed traits of the
Absolute Growth Rates (AGR) and/or the Relative Growth Rates (RGR) are plotted. This
function will also calculate and produce, using plotDeviationsBoxes
, boxplots
of the deviations of the supplied smoothed values from the observed response values for the
traits and for combinations of the different smoothing parameters and for subsets of
non-smoothing-factor
combinations. The observed and smoothed values are
supplied in long format i.e. with the values for each set of smoothing parameters stacked
one under the other in the supplied smooths.frame
. Such data can be generated
using probeSmooths
; to prevent probeSmooths
producing the
plots, which it is does using plotSmoothsComparison
, plotDeviationsBoxes
and plotSmoothsMedianDevns
, set which.plots
to none
.
The smoothing parameters include spline.types
, df
, lambdas
and
smoothing.methods
(see probeSmooths
).
Multiple plots, possibly each having multiple facets, are produced using ggplot2
.
The layout of these plots is controlled via the arguments plots.by
,
facet.x
and facet.y
. The basic principle is that the number of levels
combinations of the smoothing-parameter factor
s Type
, TunePar
,
TuneVal
, Tuning
(the combination of (TunePar
and TuneVal
), and
Method
that are included in plots.by
, facet.x
and
facet.y
must be the same as those covered by the combinations of the values
supplied to spline.types
, df
, lambdas
and Method
and incorporated
into the smooths.frame
input to plotSmoothsComparison
via the
data
argument. This ensures that smooths from different parameter sets are not
pooled into the same plot. The factor
s other than the smoothing-parameter
factor
s can be supplied to the plots.by
and facet
arguments.
The following profiles plots can be produced: (i) separate plots of the
smoothed traits for each combination of the smoothing parameters
(include Type
, Tuning
and Method
in plots.by
);
(ii) as for (i), with the corresponding plot for the unsmoothed trait
preceeding the plots for the smoothed trait (also set include.raw
to
alone
); (iii) profiles plots that compare a smoothed trait for all
combinations of the values of the smoothing parameters, arranging the plots
side-by-side or one above the other (include Type
, Tuning
and
Method
in facet.x
and/or facet.y
- to include the
unsmoothed trait set include.raw
to one of facet.x
or
facet.y
; (iv) as for (iii), except that separate plots are
produced for each combination of the levels of the factor
s
in plot.by
and each plot compares the smoothed traits for the
smoothing-parameter factor
s included in facet.x
and/or facet.y
(set both plots.by
and one or more of
facet.x
and facet.y
).
plotSmoothsComparison(data, response, response.smoothed = NULL,
individuals = "Snapshot.ID.Tag", times = "DAP",
trait.types = c("response", "AGR", "RGR"),
x.title = NULL, y.titles = NULL,
profile.plot.args =
args4profile_plot(plots.by = NULL,
facet.x = ".", facet.y = ".",
include.raw = "no"),
printPlot = TRUE, ...)
A multilevel list
that contains the ggplot
objects for the plots produced. The first-level list
has a component for each trait.types
and each of these is a
second-level list
that contains the trait
profile plots and for a trait
. It may contain components labelled
Unsmoothed
, all
or for one of the levels of the
factor
s in plots.by
; each of these third-level
ist
s contains a ggplot
object that can
be plotted using print
.
A smooths.frame
, such as is produced by
probeSmooths
and that contains the data resulting from
smoothing a response over time for a set of individuals
, the data
being arranged in long format both with respect to the
times and the smoothing-parameter values used in the smoothing. That is,
each response occupies a single column. The unsmoothed response
and
the response.smoothed
are to be plotted for different sets of values
for the smoothing parameters. The smooths.frame
must include
the columns Type
, TunePar
, TuneVal
, Tuning
and
Method
, and the columns nominated using the arguments
individuals
, times
, plots.by
, facet.x
, facet.y
,
response
, response.smoothed
, and, if requested,
the AGR and the RGR of the response
and response.smoothed
.
The names of the growth rates should be formed from response
and
response.smoothed
by adding .AGR
and .RGR
to both of them.
A character
specifying the response variable for which the
observed values are supplied.
A character
specifying the name of the column
containing the values of the smoothed response variable, corresponding
to response
and obtained for the combinations of
smoothing.methods
and df
, usually using smoothing splines.
If response.smoothed
is NULL
, then
response.smoothed
is set to the response
to which is added
the prefix s
.
A character
giving the name of the column in
data
containing the times at which the data was
collected, either as a numeric
, factor
, or
character
. It will be used to provide the values to be plotted
on the x-axis. If a factor
or character
,
the values should be numerics stored as characters.
A character
giving the name of the
factor
that defines the subsets of the data
for which each subset corresponds to the response
values for
an individual (e.g. plant, pot, cart, plot or unit).
A character
giving the trait.types
that
are to be plotted when which.plots
is profiles
.
Irrespective of the setting of get.rates
, the nominated traits
are plotted. If all
, each of response
, AGR
and
RGR
is plotted.
Title for the x-axis, used for all plots. If NULL
then set to
times
.
A character
giving the titles for the y-axis,
one for each trait specified by trait.types
and used for all plots.
If NULL
, then set to the traits derived for response
from trait.types
.
A named list
that is most easily
generated using args4profile_plot
, it documenting the
options available for varying profile plots and boxplots. Note
that if args4profile_plot
is to be called to change
from the default settings given in the default
plotSmoothsComparison
call
and some of those settings are to be retained, then the arguments
whose settings are to be retained must also be included in the call
to args4profile_plot
; be aware that if you call
args4profile_plot
, then the defaults for this call are
those for args4profile_plot
, NOT the call to
args4profile_plot
shown as the default for
plotSmoothsComparison
.
A logical
indicating whether or not to print any
plots.
allows passing of arguments to plotProfiles
.
Chris Brien
traitSmooth
, probeSmooths
, args4profile_plot
, plotDeviationsBoxes
, plotSmoothsMedianDevns
, ggplot2
.
data(exampleData)
vline <- list(ggplot2::geom_vline(xintercept=29, linetype="longdash", size=1))
traits <- probeSmooths(data = longi.dat,
response = "PSA", response.smoothed = "sPSA",
times = "DAP",
#only df is changed from the probeSmooth default
smoothing.args =
args4smoothing(smoothing.methods = "direct",
spline.types = "NCSS",
df = c(4,7), lambdas = NULL),
which.plots = "none")
plotSmoothsComparison(data = traits,
response = "PSA", response.smoothed = "sPSA",
times = "DAP", x.title = "DAP",
#only facet.x is changed from the probeSmooth default
profile.plot.args =
args4profile_plot(plots.by = NULL,
facet.x = "Tuning", facet.y = ".",
include.raw = "no",
ggplotFuncs = vline))
Run the code above in your browser using DataLab