View source: R/plot.OutputsModel.R
plot | R Documentation |
Function which creates a screen plot giving an overview of the model outputs.
## S3 method for class 'OutputsModel' plot(x, Qobs = NULL, IndPeriod_Plot = NULL, BasinArea = NULL, which = "synth", log_scale = FALSE, cex.axis = 1, cex.lab = 0.9, cex.leg = 0.9, lwd = 1, AxisTS = function(x) axis.POSIXct(side = 1, x = x$DatesR, ...), LayoutMat = NULL, LayoutWidths = rep.int(1, ncol(LayoutMat)), LayoutHeights = rep.int(1, nrow(LayoutMat)), verbose = TRUE, ...)
x |
[object of class OutputsModel] list of model outputs (which must at least include DatesR, Precip and Qsim) [POSIXlt, mm/time step, mm/time step] |
Qobs |
(optional) [numeric] time series of observed flow (for the same time steps than simulated) [mm/time step] |
IndPeriod_Plot |
(optional) [numeric] indices of the time steps to be plotted (among the OutputsModel series) |
BasinArea |
(optional) [numeric] basin area [km2], used to plot flow axes in m3/s |
which |
(optional) [character] choice of plots |
log_scale |
(optional) [boolean] indicating if the flow and the error time series axis and the flow error time series axis are to be logarithmic, default = |
cex.axis |
(optional) [numeric] the magnification to be used for axis annotation relative to the current setting of |
cex.lab |
(optional) [numeric] the magnification to be used for x and y labels relative to the current setting of |
cex.leg |
(optional) [numeric] the magnification to be used for the legend labels relative to the current setting of |
lwd |
(optional) [numeric] the line width (a positive number) |
AxisTS |
(optional) [function] to manage x-axis representing calendar dates and times on time series plots (see |
LayoutMat |
(optional) [numeric] a matrix object specifying the location of the next N figures on the output device. Each value in the matrix must be 0 or a positive integer. If N is the largest positive integer in the matrix, then the integers 1, ..., N-1 must also appear at least once in the matrix (see |
LayoutWidths |
(optional) [numeric] a vector of values for the widths of columns on the device (see |
LayoutHeights |
(optional) [numeric] a vector of values for the heights of rows on the device (see |
verbose |
(optional) [boolean] indicating if the function is run in verbose mode or not, default = |
... |
(optional) other parameters to be passed through to plotting functions |
Different types of independent graphs are available (depending on the model, but always drawn in this order):
"Precip"
: time series of total precipitation
"PotEvap"
: time series of potential evapotranspiration
"ActEvap"
: time series of simulated actual evapotranspiration (overlaid to "PotEvap"
if already drawn)
"Temp"
: time series of temperature (plotted only if CemaNeige is used)
"SnowPack"
: time series of snow water equivalent (plotted only if CemaNeige is used)
"Flows"
: time series of simulated flows (and observed flows if provided)
"Error"
: time series of simulated flows minus observed flows (and observed flows if provided)
"Regime"
: centred 30-day rolling mean applied on interannual average of daily simulated flows (and observed flows if provided)
"CorQQ"
: correlation plot between simulated and observed flows (only if observed flows provided)
"CumFreq"
: cumulative frequency plot for simulated flows (and observed flows if provided)
Different dashboards of results including various graphs are available:
"perf"
: corresponds to "Error"
, "Regime"
, "CumFreq"
and "CorQQ"
"ts"
: corresponds to "Precip"
, "PotEvap"
, "Temp"
, "SnowPack"
and "Flows"
"synth"
: corresponds to "Precip"
, "Temp"
, "SnowPack"
, "Flows"
, "Regime"
, "CumFreq"
and "CorQQ"
"all"
: corresponds to "Precip"
, "PotEvap"
, "ActuEvap"
, "Temp"
, "SnowPack"
, "Flows"
, "Error"
, "Regime"
, "CumFreq"
and "CorQQ"
If several dashboards are selected, or if an independent graph is called with a dashboard, the graphical device will include all the requested graphs without redundancy.
Screen plot window.
Laurent Coron, Olivier Delaigue, Guillaume Thirel
### see examples of RunModel_GR4J or RunModel_CemaNeigeGR4J functions ### to understand how the example datasets have been prepared ## loading examples dataset for GR4J and GR4J + CemaNeige data(exampleSimPlot) ### Qobs and outputs from GR4J and GR4J + CemaNeige models str(simGR4J, max.level = 1) str(simCNGR4J, max.level = 1) ### default dashboard (which = "synth") ## GR models whithout CemaNeige plot(simGR4J$OutputsModel, Qobs = simGR4J$Qobs) ## GR models whith CemaNeige ("Temp" and "SnowPack" added) plot(simCNGR4J$OutputsModel, Qobs = simCNGR4J$Qobs) ### "Error" and "CorQQ" plots cannot be display whithout Qobs plot(simGR4J$OutputsModel, which = "all", Qobs = simGR4J$Qobs) plot(simGR4J$OutputsModel, which = "all", Qobs = NULL) ### complex plot arrangements plot(simGR4J$OutputsModel, Qobs = simGR4J$Qobs, which = c("Flows", "Regime", "CumFreq", "CorQQ"), LayoutMat = matrix(c(1, 2, 3, 1, 4, 4), ncol = 2), LayoutWidths = c(1.5, 1), LayoutHeights = c(0.5, 1, 1)) ### customize x-axis on time series plot FunAxisTS <- function(x) { axis.POSIXct(side = 1, x = x$DatesR, at = pretty(x$DatesR, n = 10), format = "%Y-%m-%d") } plot(simGR4J$OutputsModel, Qobs = simGR4J$Qobs, AxisTS = FunAxisTS) ### add a main title ## the whole list of settable par's opar <- par(no.readonly = TRUE) ## define outer margins and a title inside it par(oma = c(0, 0, 3, 0)) plot(simGR4J$OutputsModel, Qobs = simGR4J$Qobs) title(main = "GR4J outputs", outer = TRUE, line = 1.2, cex.main = 1.4) ## reset original par par(opar)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.