Visibility Dialog
The visibility dialog can be opened by clicking the red encircled button with tooltip "mark series invisible in the chart"
By (de)selecting the checkboxes the time series can be made (in)visible.
When there are any series marked invisible the button icon will change so the user is attended that some series are made invisible, also when the visibility dialog has already been closed.
On The Fly Expression Series
Since 2018.01 the Visibility dialog has been extended with the possibility to add "on the fly" expression series.
These series will be created with a formula that contains variables refering to time series.
The user can pick a
-Name => Just to show extra information in the GUI for clearification
-Parameter group => This will decide in which plot the series will be added. Behind the screen it will use the first parameter id of the parameter group, this is done so it is able to listen to <parameterDisplayOptions> from TimeSeriesDisplayConfig.xml to determine its lineStyle for instance.
-Formula => This formula will be used to calculate the values of the expression series based on the series it is referring to.
This series will be added and appear with the Name of the series as location and the formula as postfix.
The expression series will always be non-equidistant with only the time steps that are present in all the source series.
When the selection has changed and the time series from the formula variables (sources) are not present anymore, they will be added as invisible so it can still be seen where the on the fly expression series is based on.
On the fly expression series can be removed by selecting them in blue and clicking the remove button:
Creating expression series based on other expression series (since 2019.02)
Since 2019.02 it is possible to use other expression series as source for new expression series.
In the image below expression serie C has been created as A + B which are original time series from the database.
Series D is an expression series based on the formula C * A. Because C is an expression series itself, in the formula for D the C will be substituted by its own formula A + B. This way C * A becomes (A + B) * A.
This substitution can be repaited many times as can be seen by series E ad F which are combinations of B and D and D and E respectively but can be completely rewritten into the actual source series A and B.
Import and export expression series (since 2019.02)
Since 2019.02 it is possible to import and export expression series. This way Expression series can be imported in a later session and by other users.
When an expression series is selected in blue, the "export" button will be enabled. When clicking an xml file can be named where it will be exported to.
It will store:
- the name of the series
- the formula
- time series set for each source series with the description containing the part of the formula
<?xml version="1.0" encoding="UTF-8"?> <onTheFlyExpressionTimeSeries xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/onTheFlyExpressionTimeSeries.xsd" xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <onTheFlyExpressionTimeSeriesDefinition> <name>D-E</name> <parameterGroupId>Debiet</parameterGroupId> <formula>((A+B)*A)-(B/((A+B)*A))</formula> <timeSeriesSet> <description>A</description> <moduleInstanceId>ImportOpvlWater</moduleInstanceId> <valueType>scalar</valueType> <parameterId>Q.G.15</parameterId> <locationId>KW214012</locationId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="minute" multiplier="15"/> <relativeViewPeriod unit="hour" start="-70" end="0" startOverrulable="false" endOverrulable="false"/> <readWriteMode>editing visible to all future task runs</readWriteMode> <synchLevel>5</synchLevel> <ensembleId>main</ensembleId> <ensembleMemberIndex>0</ensembleMemberIndex> </timeSeriesSet> <timeSeriesSet> <description>B</description> <moduleInstanceId>ImportOpvlWater</moduleInstanceId> <valueType>scalar</valueType> <parameterId>Q.G.15</parameterId> <locationId>KW107511</locationId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="minute" multiplier="15"/> <relativeViewPeriod unit="hour" start="-70" end="0" startOverrulable="false" endOverrulable="false"/> <readWriteMode>editing visible to all future task runs</readWriteMode> <synchLevel>5</synchLevel> <ensembleId>main</ensembleId> <ensembleMemberIndex>0</ensembleMemberIndex> </timeSeriesSet> </onTheFlyExpressionTimeSeriesDefinition> </onTheFlyExpressionTimeSeries>
The import button can be used at any time but make sure the id's used exist in the system. So in practice this functionality is most suitable for usage within the same system.
Selection of time series (since 2020.02)
Since 2020.02 when a time series is selected via their label in the tree that selection will passed to the TSD and will be selected in the graph and table as well.
This selection will be instead of what was previously selected.
To turn off the selection via the visibility tree, use ctrl+click on the previously selected label.
Unlike selecting time series directly from the TSD legend, selecting multiple time series from the visibility tree is not possible and selecting time series directly via the TSD does not persist back to the visibility dialog due to technical reasons.
Also
When statistical functions are active be aware that changing the selected time series will affect the time series for which statistical series are calculated since they only apply to selected time series. When no time series are selected statistical series are calculated for all.