aboutsummaryrefslogtreecommitdiff
path: root/man/plot.mkinfit.Rd
blob: fac5663a7df50a3d832e2dbd233b415152fbba14 (plain) (blame)
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
\name{plot.mkinfit}
\alias{plot.mkinfit}
\alias{plot_sep}
\alias{plot_res}
\alias{plot_err}
\title{
  Plot the observed data and the fitted model of an mkinfit object
}
\description{
  Solves the differential equations with the optimised and fixed parameters
  from a previous successful call to \code{\link{mkinfit}} and plots
  the observed data together with the solution of the fitted model.

  If the current plot device is a \code{\link[tikzDevice]{tikz}} device,
  then latex is being used for the formatting of the chi2 error level,
  if \code{show_errmin = TRUE}.
}
\usage{
\method{plot}{mkinfit}(x, fit = x,
  obs_vars = names(fit$mkinmod$map),
  xlab = "Time", ylab = "Observed",
  xlim = range(fit$data$time),
  ylim = "default",
  col_obs = 1:length(obs_vars), pch_obs = col_obs,
  lty_obs = rep(1, length(obs_vars)),
  add = FALSE, legend = !add,
  show_residuals = FALSE,
  show_errplot = FALSE,
  maxabs = "auto",
  sep_obs = FALSE, rel.height.middle = 0.9,
  row_layout = FALSE,
  lpos = "topright", inset = c(0.05, 0.05),
  show_errmin = FALSE, errmin_digits = 3, frame = TRUE, \dots)
plot_sep(fit, show_errmin = TRUE, \dots)
plot_res(fit, sep_obs = FALSE, show_errmin = sep_obs, \dots)
plot_err(fit, sep_obs = FALSE, show_errmin = sep_obs, \dots)
}
\arguments{
  \item{x}{
    Alias for fit introduced for compatibility with the generic S3 method.
  }
  \item{fit}{
    An object of class \code{\link{mkinfit}}.
  }
  \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{xlab}{
    Label for the x axis.
  }
  \item{ylab}{
    Label for the y axis.
  }
  \item{xlim}{
    Plot range in x direction.
  }
  \item{ylim}{
    Plot range in y direction.
  }
  \item{col_obs}{
    Colors used for plotting the observed data and the corresponding model prediction lines.
  }
  \item{pch_obs}{
    Symbols to be used for plotting the data.
  }
  \item{lty_obs}{
    Line types to be used for the model predictions.
  }
  \item{add}{
    Should the plot be added to an existing plot?
  }
  \item{legend}{
    Should a legend be added to the plot?
  }
  \item{show_residuals}{
    Should residuals be shown? If only one plot of the fits is shown, the
    residual plot is in the lower third of the plot. Otherwise, i.e. if
    "sep_obs" is given, the residual plots will be located to the right of
    the plots of the fitted curves.
  }
  \item{show_errplot}{
    Should squared residuals and the error model be shown? If only one plot of
    the fits is shown, this plot is in the lower third of the plot.
    Otherwise, i.e. if "sep_obs" is given, the residual plots will be located
    to the right of the plots of the fitted curves.
  }
  \item{maxabs}{
    Maximum absolute value of the residuals. This is used for the scaling of
    the y axis and defaults to "auto".
  }
  \item{sep_obs}{
    Should the observed variables be shown in separate subplots? If yes, residual plots
    requested by "show_residuals" will be shown next to, not below the plot of the fits.
  }
  \item{rel.height.middle}{
    The relative height of the middle plot, if more than two rows of plots are shown.
  }
  \item{row_layout}{
    Should we use a row layout where the residual plot or the error model plot is shown
    to the right?
  }
  \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{show_errmin}{
    Should the FOCUS chi2 error value be shown in the upper margin of the plot?
  }
  \item{errmin_digits}{
    The number of significant digits for rounding the FOCUS chi2 error percentage.
  }
  \item{frame}{
    Should a frame be drawn around the plots?
  }
  \item{\dots}{
    Further arguments passed to \code{\link{plot}}.
  }
}
\value{
  The function is called for its side effect.
}
\examples{
# One parent compound, one metabolite, both single first order, path from
# parent to sink included
\dontrun{
SFO_SFO <- mkinmod(parent = mkinsub("SFO", "m1", full = "Parent"),
                   m1 = mkinsub("SFO", full = "Metabolite M1" ))
fit <- mkinfit(SFO_SFO, FOCUS_2006_D, quiet = TRUE, error_model = "tc")
plot(fit)
plot_res(fit)
plot_err(fit)

# Show the observed variables separately, with residuals
plot(fit, sep_obs = TRUE, show_residuals = TRUE, lpos = c("topright", "bottomright"),
     show_errmin = TRUE)

# The same can be obtained with less typing, using the convenience function plot_sep
plot_sep(fit, lpos = c("topright", "bottomright"))

# Show the observed variables separately, with the error model
plot(fit, sep_obs = TRUE, show_errplot = TRUE, lpos = c("topright", "bottomright"),
     show_errmin = TRUE)
}
}
\author{
  Johannes Ranke
}

Contact - Imprint