plotPrediction {dMod} | R Documentation |
Plot a list of model predictions
Description
Plot a list of model predictions
Usage
plotPrediction(prediction, ...)
## S3 method for class 'prdlist'
plotPrediction(
prediction,
...,
errfn = NULL,
scales = "free",
facet = "wrap",
transform = NULL
)
Arguments
prediction |
Named list of matrices or data.frames, usually the output of a prediction function as generated by Xs. |
... |
Further arguments going to |
errfn |
error model function |
scales |
The scales argument of |
facet |
Either |
transform |
list of transformation for the states, see coordTransform. |
Details
The data.frame being plotted has columns time
, value
, name
and condition
.
Value
A plot object of class ggplot
.
Examples
## Observation function
fn <- eqnvec(
sine = "1 + sin(6.28*omega*time)",
cosine = "cos(6.28*omega*time)"
)
g <- Y(fn, parameters = "omega")
## Prediction function for time
x <- Xt()
## Parameter transformations to split conditions
p <- NULL
for (i in 1:3) {
p <- p + P(trafo = c(omega = paste0("omega_", i)), condition = paste0("frequency_", i))
}
## Evaluate prediction
times <- seq(0, 1, .01)
pars <- structure(seq(1, 2, length.out = 3), names = attr(p, "parameters"))
prediction <- (g*x*p)(times, pars)
## Plotting prediction
# plot(prediction)
plotPrediction(prediction)
plotPrediction(prediction, scales = "fixed")
plotPrediction(prediction, facet = "grid")
plotPrediction(prediction,
scales = "fixed",
transform = list(sine = "x^2", cosine = "x - 1"))
## Simulate data
dataset <- wide2long(prediction)
dataset <- dataset[seq(1, nrow(dataset), 5),]
set.seed(1)
dataset$value <- dataset$value + rnorm(nrow(dataset), 0, .1)
dataset$sigma <- 0.1
data <- as.datalist(dataset, split.by = "condition")
## Plotting data
# plot(data)
plot1 <- plotData(data)
plot1
## Plotting data and prediction with subsetting
# plot(prediction, data)
plot2 <- plotCombined(prediction, data)
plot2
plot3 <- plotCombined(prediction, data,
time <= 0.5 & condition == "frequency_1")
plot3
plot4 <- plotCombined(prediction, data,
time <= 0.5 & condition != "frequency_1",
facet = "grid")
plot4
plot5 <- plotCombined(prediction, data, aesthetics = list(linetype = "condition"))
plot5
[Package dMod version 1.0.2 Index]