1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/plot.nlme.mmkin.R
\name{plot.nlme.mmkin}
\alias{plot.nlme.mmkin}
\title{Plot a fitted nonlinear mixed model obtained via an mmkin row object}
\usage{
\method{plot}{nlme.mmkin}(
x,
i = 1:ncol(x$mmkin_orig),
main = rownames(x$mmkin_orig),
obs_vars = names(x$mkinmod$map),
standardized = TRUE,
xlab = "Time",
ylab = "Observed",
xlim = range(x$data$time),
legends = 1,
lpos = "topright",
inset = c(0.05, 0.05),
resplot = c("predicted", "time"),
ymax = "auto",
maxabs = "auto",
cex = 0.7,
rel.height.middle = 0.9,
pch_ds = 1:length(i),
col_ds = pch_ds + 1,
lty_ds = col_ds,
frame = TRUE,
...
)
}
\arguments{
\item{x}{An object of class \code{\link{nlme.mmkin}}}
\item{i}{A numeric index to select datasets for which to plot the nlme fit,
in case plots get too large}
\item{main}{The main title placed on the outer margin of the plot.}
\item{obs_vars}{A character vector of names of the observed variables for
which the data and the model should be plotted. Defauls to all observed
variables in the model.}
\item{standardized}{Should the residuals be standardized? Only takes effect if
\code{resplot = "time"}.}
\item{xlab}{Label for the x axis.}
\item{ylab}{Label for the y axis.}
\item{xlim}{Plot range in x direction.}
\item{legends}{An index for the fits for which legends should be shown.}
\item{lpos}{Position(s) of the legend(s). Passed to \code{\link{legend}} as
the first argument. If not length one, this should be of the same length
as the obs_var argument.}
\item{inset}{Passed to \code{\link{legend}} if applicable.}
\item{resplot}{Should the residuals plotted against time or against
predicted values?}
\item{ymax}{Vector of maximum y axis values}
\item{maxabs}{Maximum absolute value of the residuals. This is used for the
scaling of the y axis and defaults to "auto".}
\item{cex}{Passed to the plot functions and \code{\link{mtext}}.}
\item{rel.height.middle}{The relative height of the middle plot, if more
than two rows of plots are shown.}
\item{pch_ds}{Symbols to be used for plotting the data.}
\item{col_ds}{Colors used for plotting the observed data and the
corresponding model prediction lines for the different datasets.}
\item{lty_ds}{Line types to be used for the model predictions.}
\item{frame}{Should a frame be drawn around the plots?}
\item{\dots}{Further arguments passed to \code{\link{plot.mkinfit}} and
\code{\link{mkinresplot}}.}
}
\value{
The function is called for its side effect.
}
\description{
Plot a fitted nonlinear mixed model obtained via an mmkin row object
}
\examples{
ds <- lapply(experimental_data_for_UBA_2019[6:10],
function(x) x$data[c("name", "time", "value")])
names(ds) <- paste0("ds ", 6:10)
dfop_sfo <- mkinmod(parent = mkinsub("DFOP", "A1"),
A1 = mkinsub("SFO"), quiet = TRUE)
f <- mmkin(list("DFOP-SFO" = dfop_sfo), ds, quiet = TRUE, cores = 1)
plot(f[, 3:4], standardized = TRUE)
library(nlme)
# For this fit we need to increase pnlsMaxiter, and we increase the
# tolerance in order to speed up the fit for this example evaluation
f_nlme <- nlme(f, control = list(pnlsMaxIter = 120, tolerance = 1e-4))
plot(f_nlme)
}
\author{
Johannes Ranke
}
|