prodStack
draws the production stack for a set of areas or districts.
User can see available stacks with prodStackAliases
and create new ones
with setProdStackAlias
.
prodStackAliases()
setProdStackAlias(
name,
variables,
colors,
lines = NULL,
lineColors = NULL,
lineWidth = 3,
description = NULL
)
prodStack(
x,
stack = "eco2mix",
areas = NULL,
mcYear = "average",
dateRange = NULL,
yMin = NULL,
yMax = NULL,
customTicks = NULL,
main = .getLabelLanguage("Production stack", language),
unit = c("MWh", "GWh", "TWh"),
compare = NULL,
compareOpts = list(),
interactive = getInteractivity(),
legend = TRUE,
legendId = sample(1e+09, 1),
groupId = legendId,
updateLegendOnMouseOver = TRUE,
legendItemsPerRow = 5,
width = NULL,
height = NULL,
xyCompare = c("union", "intersect"),
h5requestFiltering = deprecated(),
stepPlot = FALSE,
drawPoints = FALSE,
timeSteph5 = deprecated(),
mcYearh5 = deprecated(),
tablesh5 = deprecated(),
language = "en",
hidden = NULL,
refStudy = NULL,
...
)
name of the stack to create or update
A named list of expressions created with [base::alist]. The name of each element is the name of the variable to draw in the stacked graph. The element itself is an expression explaining how to compute the variable (see examples).
Vector of colors with same length as parameter variables
. If
variables
is an alias, then this argument should be NULL
in
order to use default colors.
A named list of expressions created with [base::alist]
indicating how to compute the curves to display on top of the stacked graph.
It should be NULL
if there is no curve to trace or if parameter
variables
is an alias.
Vector of colors with same length as parameter lines
. This argument
should be NULL
if there is no curve to trace or if parameter
variables
is an alias.
Optionnal. Defaut to 3. Vector of width with same length as parameter lines
(or only one value).
Description of the stack. It is displayed by function
prodStackAliases
.
An object of class antaresData
created with function
[antaresRead::readAntares()] containing data for areas and or
districts. it can be a list of antaresData
objects.
In this case, one chart is created for each object.
Can also contains opts who refer to a h5 file or list of opts.
Name of the stack to use. One can visualize available stacks with
prodStackAliases
Vector of area or district names. The data of these areas or districts is aggregated by the function to construct the production stack.
If x
, contains multiple Monte-Carlo scenarios, this parameter
determine which scenario is displayed. Must be an integer representing the
index of the scenario or the word "average". In this case data are
averaged.
A vector of two dates. Only data points between these two dates are displayed. If NULL, then all data is displayed.
numeric
, the minimum value to be displayed on all y Axis. If NULL
, the min value is automatically set
numeric
, the maximum value to be displayed on all y Axis. If NULL
, the max value is automatically set
numeric
vector of the custom ticks values to be displayed on the y Axis. If NULL
, the ticks are automatically generated
Title of the graph.
Unit used in the graph. Possible values are "MWh", "GWh" or "TWh".
An optional character vector containing names of parameters. When it is set, two charts are outputed with their own input controls. Alternatively, it can be a named list with names corresponding to parameter names and values being list with the initial values of the given parameter for each chart. See details if you are drawing a map.
List of options that indicates the number of charts to create and their position. Check out the documentation of [manipulateWidget::compareOptions] to see available options.
LogicalValue. If TRUE
, then a shiny gadget is launched that lets
the user interactively choose the areas or districts to display.
Logical value indicating if a legend should be drawn. This argument is usefull when one wants to create a shared legend with [prodStackLegend()]
Id of the legend linked to the graph. This argument is usefull when one wants to create a shared legend with [prodStackLegend()]
Parameter that can be used to synchronize the horizontal zoom of multiple charts. All charts that need to be synchronized must have the same group.
LogicalValue
. If TRUE
the legend will be updated when the mouse is over a stack. If FALSE
the legend will be updated on a click
Number of elements to put in each row of the legend.
Width of the graph expressed in pixels or in percentage of the parent element. For instance "500px" and "100%" are valid values.
Height of the graph expressed in pixels or in percentage of the parent element. For instance "500px" and "100%" are valid values.
Use when you compare studies, can be "union" or "intersect". If union, all of mcYears in one of studies will be selectable. If intersect, only mcYears in all studies will be selectable.
Contains arguments used by default for h5 request, typically h5requestFiltering = list(areas = "a", mcYears = 2)
boolean
, step style for curves.
boolean
, add points on graph
character
timeStep to read in h5 file. Only for Non interactive mode.
numeric
mcYear to read for h5. Only for Non interactive mode.
character
tables for h5 ("areas" "links", "clusters" or "disticts"). Only for Non interactive mode.
character
language use for label. Defaut to 'en'. Can be 'fr'.
logical
Names of input to hide. Defaut to NULL
An object of class antaresData
created with function
[antaresRead::readAntares()] containing data for areas and or
districts. Can also contains an opts who refer to a h5 file.
Other arguments for manipulateWidget
prodStack
returns an interactive html graphic. If argument
interactive
is TRUE
, then a shiny gadget is started and the
function returns an interactive html graphic when the user clicks on button
"Done".
prodStackAliases
displays the list of available aliases.
setProdStackAlias
creates or updates a stack alias.
compare argument can take following values :
"mcYear"
"main"
"unit"
"areas"
"legend"
"stack"
"stepPlot"
"drawPoints"
[prodStackLegend()]
if (FALSE) {
mydata <- readAntares(areas = "all", timeStep = "daily")
# Start a shiny gadget that permits to choose areas to display.
prodStack(x = mydata, unit = "GWh")
# Use in a non-interactive way
prodStack(x = mydata, unit = "GWh", areas = "fr", interactive = FALSE)
# Define a custom stack
setProdStackAlias(
name = "Wind and solar",
variables = alist(wind = WIND, solar = SOLAR),
colors = c("green", "orange")
)
prodStack(x = mydata, unit = "GWh", stack = "Wind and solar")
# In a custom stack it is possible to use computed values
setProdStackAlias(
name = "Renewable",
variables = alist(
renewable = WIND + SOLAR + `H. ROR` + `H. STOR` + `MISC. NDG`,
thermal = NUCLEAR + LIGNITE + COAL + GAS + OIL + `MIX. FUEL` + `MISC. DTG`
),
colors = c("green", gray(0.3)),
lines = alist(goalRenewable = LOAD * 0.23),
lineColors = "#42EB09"
)
prodStack(x = mydata, unit = "GWh", stack = "renewable")
# Use compare
prodStack(x = mydata, compare = "areas")
prodStack(x = mydata, unit = "GWh", compare = "mcYear")
prodStack(x = mydata, unit = "GWh", compare = "main")
prodStack(x = mydata, unit = "GWh", compare = "unit")
prodStack(x = mydata, unit = "GWh", compare = "areas")
prodStack(x = mydata, unit = "GWh", compare = "legend")
prodStack(x = mydata, unit = "GWh", compare = "stack")
prodStack(x = mydata, unit = "GWh", compare = c("mcYear", "areas"))
# Compare studies
prodStack(list(mydata, mydata))
# Compare studies with refStudy argument
prodStack(x = myData1, refStudy = myData2)
prodStack(x = myData1, refStudy = myData2, interactive = FALSE)
prodStack(x = list(myData2, myData3, myData4), refStudy = myData1)
prodStack(x = list(myData2, myData3, myData4), refStudy = myData1, interactive = FALSE)
# Use h5 opts
# Set path of simulaiton
setSimulationPath(path = path1)
# Convert your study in h5 format
writeAntaresH5(path = mynewpath)
# Redefine sim path with h5 file
opts <- setSimulationPath(path = mynewpath)
prodStack(x = opts)
# Compare elements in a single study
prodStack(x = opts, .compare = "mcYear")
# Compare 2 studies
prodStack(x = list(opts, opts2))
# Compare 2 studies with argument refStudies
prodStack(x = opts, refStudy = opts2)
prodStack(x = opts, refStudy = opts2, interactive = FALSE, mcYearh5 = 2, areas = myArea)
prodStack(x = opts, refStudy = opts2, h5requestFiltering = list(areas = myArea,
mcYears = 2))
}