plotCombined {dMod} | R Documentation |
Plot a list of model predictions and a list of data points in a combined plot
Description
Plot a list of model predictions and a list of data points in a combined plot
Usage
plotCombined(prediction, ...)
## S3 method for class 'prdlist'
plot(x, data = NULL, ..., scales = "free", facet = "wrap", transform = NULL)
## S3 method for class 'prdlist'
plotCombined(
prediction,
data = NULL,
...,
scales = "free",
facet = "wrap",
transform = NULL,
aesthetics = NULL
)
## S3 method for class 'prdframe'
plot(x, data = 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 |
x |
prediction |
data |
Named list of data.frames as being used in res, i.e. with columns |
scales |
The scales argument of |
facet |
|
transform |
list of transformation for the states, see coordTransform. |
aesthetics |
Named list of aesthetic mappings, specified as character, e.g. |
Details
The data.frame being plotted has columns time
, value
, sigma
,
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