...
Attribute: id
Elements:
- description
- legendFontSize: Font size of legend
- axis TitleFontSize: Title font size
- tickLableFontSize: tick label font size
- tickTimeStep: to tie ticks to a time step (since 2018.02)
- synchronizeParameterAxis: synchronize the axis range of subplots displaying time series for the same parameter group (since 2018.02)
- visibilityGroup: defines order of the visibility groups in the drop down box (since 2019.02)
- subplot: see below for details
- plotViewerId & tableViewerId: to use alternative viewers for plot or tables
...
Attributes: name and id
Elements:
- description: Optional description
- nodeId
- viewPermission
- editPermission
- locationLoop
- types of display
- display: see below for details
- singleLocationDisplays Single location displays can be used to easily create plots for individual locations. This can either be done for individual locations, or alternatively for a locationSet which will then produce a list of location with their corresponding plot.
- singleParentLocationDisplays
- displayGroup: see below for details
- Adds multiple displays at once, each showing the children and parent for one parent location.
- displayGroupId (since 2023.01) include a displayGroup defined elsewhere by referencing the id. displayGroupId
Figure 3 - example of a configured displayGroup file (click to enlarge)
Figure 4 Root element of the display groups definition
...
Info |
---|
Display groups may be defined while DELFT-FEWS is running and reloaded by re-opening the time series dialogue. If a mistake is made, then the shortcuts item to open the tree view will not appear and an appropriate message will be generated. After resolving the mistake the item will again become available on re-loading the display. |
...
subplot (plot)Element of plot. Root element for each subplot. Multiple sub-plots may be defined per plot.
...
A horizontal bar is plotted for each time series. The color of the bars signify the value for that time series at the given time on the x-axis.
Code Block |
---|
language | xml |
---|
title | horizontalColorCode example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <plot id="HorizontalColorCodePumps">
<description>testing the horizontal color code plots</description>
<subplot>
<subPlotType>horizontalColorCode</subPlotType>
<barMarginPercentage>30</barMarginPercentage>
<classBreaks>
<break lowerValue="0" color="green" label="off"/>
<break lowerValue="1" color="goldenrod" label="1 pump"/>
<break lowerValue="2" color="magenta" label="2 pumps"/>
<break lowerValue="3" color="aquamarine" label="3 pumps"/>
<break lowerValue="4" color="red"/>
</classBreaks>
<timeSeriesSet>
<moduleInstanceId>Preprocess_Units_HTMS</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>PO_BFN</parameterId>
<locationId>BFN Tower 1</locationId>
<locationId>BFN Tower 2</locationId>
<locationId>BFN Tower 3</locationId>
<locationId>BFN Tower 4</locationId>
<locationId>BFN Tower 5</locationId>
<locationId>BFN Tower 6</locationId>
<locationId>BFN Tower 7</locationId>
<timeSeriesType>simulated forecasting</timeSeriesType>
<timeStep unit="hour" multiplier="1"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</subplot>
</plot> |
| Image Modified |
leftAxis and rightAxis
...
Available since 2020.02. If it is set to true, the subplot y-axis (or domain axis) will be logarithmic. A parameter can also be configured to always/never be displayed on a logarithmic scale, but the subplot setting has precedence. If a parameter is set logarithmic true, but the subplot it appears in is configured logarithmic-false, the axis will not be logarithmic. It is also possible to configure a mixture of logarithmic and non-logarithmic subplots in the same plot:Image Removed.
Logarithmic axis can also be turned on and off manually, using the menu bar. If you do so, the setting will effect all subplots the same way. Should you wish to reset the subplots to the configured version, use the reset domain axis to configured button.Image Removed
Image Added | Image Added |
...
Image Added |
drawingOrderInverted
This option can be used to invert drawing order of the lines. By default the lines are drawn in the same order as shown in the legend : the first line first, the last line last. The last line is then on top. If drawing order is inverted the last line in the legend is drawn first and the first line last. The first line is then on top.
...
Use the <area> element in combination with a <lineStyle> to obtain vertical lines.
Code Block |
---|
language | xml |
---|
title | area example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <subplot>
<area>
<lineStyle>solid</lineStyle>
<lineWidth>10</lineWidth>
<color>blue</color>
<opaquenessPercentage>50</opaquenessPercentage>
<timeSeriesSet>
<moduleInstanceId>ImportMSW</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.m</parameterId>
<locationId>H-MS-LUIK</locationId>
<locationId>H-MS-SINT</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour"/>
<relativeViewPeriod unit="day" start="-2" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</area>
</subplot>
|
| Image Modified |
clusteredBars
This option makes it possible to cluster bars per timestep. The config example below shows how clustered bars are displayed and configured:
Code Block |
---|
language | xml |
---|
title | clusteredBars example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <displayGroup name="bars">
<display name="clusteredBars">
<subplot>
<clusteredBars axis="left">
<bar>
<color>blue</color>
<visibleInLegend>false</visibleInLegend>
<visibleInPlot>false</visibleInPlot>
<timeSeriesSet>
<moduleInstanceId>Import</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.m</parameterId>
<locationId>LocA</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour"/>
<relativeViewPeriod unit="hour" start="-12" end="12"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</bar>
<bar>
<color>red</color>
<visibleInTable>false</visibleInTable>
<label>Rated Discharge</label>
<timeSeriesSet>
<moduleInstanceId>Import</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.m</parameterId>
<locationId>LocA</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour"/>
<relativeViewPeriod unit="hour" start="-12" end="12"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</bar>
</clusteredBars>
</subplot>
</display> |
| Image Modified |
variableLineWidth
Type of plot that can use variable line width's for different graphs. See screenshot below of plot for different ensemble members with different line width's. In this case line width is an indication of the probability of the ensemble member. The sum of probability of all ensemble members at a time is one. Selecting separate ensemble members will mark them with the color black.
...
Below are two examples of a config and the resulting plot.
Code Block |
---|
language | xml |
---|
title | dual axis example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <subplot>
<plotWeight>1</plotWeight>
<line>
<color>blue</color>
<axis>left</axis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationId>Hydro1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
<line>
<color>blue</color>
<axis>left</axis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.rated</parameterId>
<locationId>Hydro3</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
<line>
<color>red</color>
<axis>right</axis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.obs</parameterId>
<locationId>Hydro2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
<line>
<color>red</color>
<axis>right</axis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.rated</parameterId>
<locationId>Hydro4</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
|
| Image Modified |
Code Block |
---|
language | xml |
---|
title | dual axis with 2 parameterGroups example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <subplot>
<plotWeight>1</plotWeight>
<line>
<color>blue</color>
<axis>right</axis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.obs</parameterId>
<locationId>Hydro1</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
<line>
<color>red</color>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.obs</parameterId>
<locationId>Hydro2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
|
| Image Modified Threshold line only for timeseries on the right y axis |
Stage/discharge plots (dual y-axis plot)
...
Below an configuration and resulting plot
Code Block |
---|
language | xml |
---|
title | ratingAxis example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <subplot>
<line>
<color>black</color>
<lineStyle>none</lineStyle>
<markerStyle>+</markerStyle>
<markerSize>3</markerSize>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.rated</parameterId>
<locationId>Hydro4</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
<line>
<color>black</color>
<lineStyle>solid</lineStyle>
<markerStyle>circle</markerStyle>
<markerSize>6</markerSize>
<axis>left</axis>
<ratingAxis>
<parameterGroupId>Water Level</parameterGroupId>
<transformationType>dischargeStage</transformationType>
</ratingAxis>
<timeSeriesSet>
<moduleInstanceId>ImportTelemetry</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.obs</parameterId>
<locationId>Hydro2</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-36" end="36"/>
<readWriteMode>editing visible to all future task runs</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
|
| Image Modified |
timeSeriesSet
chainageLocationSetId
...
Code Block |
---|
language | xml |
---|
title | chainageLocationSetId example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <plot id="Langsprofiel_Caspargouwse_Wetering">
<subplot>
<timeSeriesSet>
<moduleInstanceId>WerkFilter</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.G.15</parameterId>
<chainageLocationSetId>Langsprofiel_Caspargouwse_Wetering</chainageLocationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="day" start="-32" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</subplot>
</plot>
<displayGroup name="LangsProfiel">
<display name="Langsprofiel_Caspargouwse_Wetering">
<locationSetId>Langsprofiel_Caspargouwse_Wetering</locationSetId>
<plotId>Langsprofiel_Caspargouwse_Wetering</plotId>
</display>
</displayGroup>
|
| Image Modified |
domainParameterId
...
Code Block |
---|
language | xml |
---|
title | domainParameterId example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <timeSeriesSet>
<moduleInstanceId>LMW_Import_spectrum</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Wave.variancedensity.meting</parameterId>
<domainParameterId>f</domainParameterId>
<locationSetId>LMW_Czz10</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="60"/>
<relativeViewPeriod unit="day" start="-2" end="2"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
|
| Image Modified |
Dual Domain Axis Time Series / 2D Polar Spectra plots
...
Code Block |
---|
language | xml |
---|
title | domainParameterId example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <subplot>
<classBreaks>
<break symbolSize="10" color="000080" lowerValue="0"/>
<break symbolSize="10" color="0000A8" lowerValue="0.0005"/>
<break symbolSize="10" color="0000E6" lowerValue="0.001"/>
<break symbolSize="10" color="004DFF" lowerValue="0.0025"/>
<break symbolSize="10" color="00B3FF" lowerValue="0.005"/>
<break symbolSize="10" color="1AFFE5" lowerValue="0.01"/>
<break symbolSize="10" color="80FF80" lowerValue="0.015"/>
<break symbolSize="10" color="E6FF19" lowerValue="0.02"/>
<break symbolSize="10" color="FFB200" lowerValue="0.025"/>
<break symbolSize="10" color="FF4C00" lowerValue="0.035"/>
<break symbolSize="10" color="E50000" lowerValue="0.04"/>
<break symbolSize="10" color="A80000" lowerValue="0.045"/>
<break symbolSize="10" color="800000" lowerValue="0.05"/>
</classBreaks>
<direction>from</direction>
<timeSeriesSet>
<moduleInstanceId>Swan_dcsmv6_hirlam_forecast_import</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Wave.variancedensity2D.voorspeld</parameterId>
<domainParameterId>f</domainParameterId>
<domainParameterId>dir</domainParameterId>
<locationSetId>SWAN_POINTS2</locationSetId>
<timeSeriesType>simulated forecasting</timeSeriesType>
<timeStep unit="minute" multiplier="60"/>
<relativeViewPeriod unit="day" start="-2" end="2"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</subplot>
|
| Image Modified |
Anchor |
---|
| visibleInTable |
---|
| visibleInTable |
---|
|
visibleInTable, visibleInPlot
...
Adding descriptiveFunctions will result in an extra panel in the display, showing relevant descriptive information about the timeseries in view. More information on the descriptive functions available can be found at TimeSeriesDisplayConfiguration
Image Modified
additionalTimeSeries
...
Code Block |
---|
language | xml |
---|
title | additionalTimeSeries example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <plot id="WATERBALANS_DAG_CAW">
<subplot stackPlot="true">
<lineStyle>bar</lineStyle>
<timeSeriesSet>
<moduleInstanceId>BalansAfvoergebieden</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>H.G.i.d</parameterId>
<locationSetId>AFVOERGEBIEDEN</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="day" timeZone="GMT+1"/>
<relativeViewPeriod unit="day" start="-32" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
<additionalTimeSeries name="*AFGB_NAAR*" separateSubPlot="true">
<locationFunctionEquals selected="@LOC_ID@" additional="@AFGB_NAAR@"/>
<timeSeriesSet>
<moduleInstanceId>ImportOpvlWater</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.G.15</parameterId>
<locationSetId>OPVLWATER_SUBLOC_DEBIETEN</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-70" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</additionalTimeSeries>
<additionalTimeSeries name="*AFGB_VAN*" separateSubPlot="true">
<locationFunctionEquals selected="@LOC_ID@" additional="@AFGB_VAN@"/>
<timeSeriesSet>
<moduleInstanceId>ImportOpvlWater</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.G.15</parameterId>
<locationSetId>OPVLWATER_SUBLOC_DEBIETEN</locationSetId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="minute" multiplier="15"/>
<relativeViewPeriod unit="hour" start="-70" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</additionalTimeSeries>
</subplot>
</plot> |
| |
...
locationLoop (displayGroup)By defining a location loop within a displayGroup, the display group will be created for each location of location set configured in the loop.
...
Code Block |
---|
language | xml |
---|
title | locationLoop example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
|
<displayGroup name="Validations Location Loop">
<displayGroup name=" ">
<locationLoop>
<locationSetId>FloodingAreas</locationSetId>
<includeChildren>true</includeChildren>
<locationRelationId>L_AREA</locationRelationId>
<locationRelationId>L_VISIBILIY</locationRelationId>
<locationRelationId>MEASUREMENT_PARENT</locationRelationId>
</locationLoop>
<displayGroup name="Waterbalance">
<display name="Waterbalance">
<plotId>Waterbalance</plotId>
</display>
<display name="Waterbalance incl. error">
<plotId>Waterbalance_error</plotId>
</display>
</displayGroup>
...
</displayGroup>
</displayGroup> |
...
display (displayGroup)Definition of a pre-configured display. Each display may contain multiple sub-plots. Multiple displays may be defined per display group.
...
- parentLocationId:
- description
- startForwardLookingPeriod: way to define view period for seasonal or water year analysis
- nrOfRecentForecasts: Can be applied to show multiple recent forecasts (simulated forecast type)
- plotId
- tickTimeStep
- thresholdLocationSetId
startForwardLookingPeriod
Normally, displays are defined with a relative view period, so that the view window progresses with current system time. This paradigm does not fit systems that are more oriented towards seasonal or water year analysis. Therefore an option has been added since 2011.02 to define a season, such that the time axis is fixed, while the vertical red line (current system time) moves over time from left to right through the display.
To utilize this functionality, a season should be defined instead of a relative view period. This season specification if composed of a start and end date, as well an entry called 'startForwardLookingPeriod'.
The software compares the currentSystemTime against the date specified in the 'startForwardLookingPeriod' entry, to decide if the time axis needs to shift to the next year/season. This decision is relevant within a water supply forecasting context since a few weeks before the end of the water year you may like to look forward to the next wateryear instead of the current wateryear. Use readWriteMode=read only in your time seriessets, as other modes such as 'read complete forecast' stretches the time horizon, disrupting the time horizon displayed outside the season.
...
Code Block |
---|
language | xml |
---|
title | startForwardLookingPeriod example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <display name="SELI1 - Selway R nr Lowell - SWE">
<startForwardLookingPeriod>--09-01</startForwardLookingPeriod>
<season>
<startMonthDay>--10-01</startMonthDay>
<endMonthDay>--09-30</endMonthDay>
</season>
<locationId>SELI1L</locationId>
<locationId>SELI1U</locationId>
<plotId>SWE</plotId>
</display>
|
| |
tickTimeStep
To tie the date/time ticks to the valid times of the (cardinal) time step, configure ‘tickTimeStep’ in DisplayGroups.xml. For example, if the ‘tickTimeStep’ is 6 hours then the ticks are always aligned with the synoptic times 00Z, 06Z, 12Z, 18Z. When we are zooming out and there is no space to display all date/times along the x-axis, then one or more synoptic times ticks are omitted. For example we see ticks at 00Z and 18Z.
Anchor |
---|
| singleLocationDisplays |
---|
| singleLocationDisplays |
---|
|
singleLocationDisplays (displayGroup)Adds multiple displays at once to this display group. Every display will show only one location.
showAsVerticalProfile
...
...
When true vertical profile timeseries are calculated on the fly from the scalar time series at the child locations of the locations defined in the timeSeriesSet.
Code Block |
---|
language | xml |
---|
title | showAsVerticalProfile example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <plot id="waterQuality">
<subplot>
<line>
<color>blue</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>WT_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
<subplot>
<line>
<color>turquoise</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>EC_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
<subplot>
<line>
<color>cyan</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>pH_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
<subplot>
<line>
<color>forest green</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Turbidity_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
<subplot>
<line>
<color>green3</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>DO_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
<subplot>
<line>
<color>goldenrod</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>DO%_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
</subplot>
</plot>
<displayGroup id="waterquality" name="water quality">
<display id="WQ_R_401027" name="401027 WT, EC, pH, Turbidity, DO">
<relativeViewPeriod unit="hour" start="-336" end="168"/>
<locationId>R_401027</locationId>
<plotId>waterQuality</plotId>
<showAsVerticalProfile>true</showAsVerticalProfile>
</display>
</displayGroup>
|
| Image Added |
classbreaks or classbreak id
It's possible to configure classbreaks for vertical profile time series. If they are configured, in the time series dropdown menu a "Use color map" button will become visible.
Config example:
Code Block |
---|
language | xml |
---|
linenumbers | true |
---|
|
<plot id="waterTemperatureVerticalProfile">
<subplot>
<line>
<color>blue</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>WT_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
<classBreaksId>WaterTemperature</classBreaksId>
</subplot>
<subplot>
<line>
<color>turquoise</color>
<lineStyle>solid;thick</lineStyle>
<markerStyle>square</markerStyle>
<timeSeriesSet>
<moduleInstanceId>ProcessObservedWaterquality</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>EC_obs</parameterId>
<locationId>R_401027</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep unit="hour" multiplier="3"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</line>
<classBreaks>
<break lowerValue="2" color="green"/>
<break lowerValue="3" color="dark sea green"/>
</classBreaks>
</subplot> |
Image Added Image Added
alwaysDisplayAsColorMap
Code Block |
---|
language | xml |
---|
linenumbers | true |
---|
|
<display id="WT_R_401027_heatmap" name="401027 WT (heatmap)">
<relativeViewPeriod unit="hour" start="-336" end="168"/>
<locationId>R_401027</locationId>
<plotId>waterQualityHeatmapTemperature</plotId>
<showAsVerticalProfile>true</showAsVerticalProfile>
<alwaysDisplayAsColorMap>true</alwaysDisplayAsColorMap>
</display> |
If alwaysDisplayAsColorMap is configured, the subplot will alwys appear as a color map; the option to toggle between vertical profile and color map will be disabled. It can only be used in combination with classbreaks.
showAsScatterPlot
To plot time series, with the values of the different time series on the X and Y axis. - <referencePoints> can be defined in several ways:
- <point> will be shown as an interaction line.
- <xAttributeId>, <yAttributeId> defining the x and y coordinates of the points, the y-coordinates.
Time dependent location attributes are not supported.
- <interactionLine>
- Any number of interaction lines can be added to the plot.
- Lines configured with points or location attributes can be added in any order or combination.
- You can customise the interaction lines.
In this case, the <referencePoints> element should be surrounded by <interactionLine> element. - None of the customisation options within an <interactionLine> are compulsory.
- If you wish to configure several With multiple interaction lines, all of them have to should be configured as either as <interactionLine> interactionLine or as <referencePoints>referencePoints.
You cannot mix <referencePoints> and <interactionLine>.
| Example from operational system
|
...
- <showAsScatterPlot>: TimeSeries display will be replaced with a scatterplot
- <addInteractionScatterPlot>: you can turn on an extra scatterplot that is displayed next to the original time series.. The interaction scatterplot
- This button has to be enabled in the TimeSeriesDisplayConfig.xml buttonSettings
.- with <showInteractionScatterPlot visible="true"/>
With the elements <xAxisRange> and <yAxisRange> the range of the x and y axis can be defined.
Image Modified
Image Modified
Pairing of time series
By default all time series with the same location are paired up, but this behavior can be changed with the following configuration options.
...
Code Block |
---|
language | xml |
---|
title | Scatter plot example (click to expand) |
---|
linenumbers | true |
---|
collapse | true |
---|
| <displayGroup id="pk" name="Pompkrommes">
<singleParentLocationDisplays>
<locationId>261VPrg-08017</locationId>
<locationId>261VPrg-10021</locationId>
<plotId>pompkromme</plotId>
<addInteractionScatterPlot>
<xAxisParameterId>Q.meting.keten</xAxisParameterId>
<yAxisParameterId>H.opvoer</yAxisParameterId>
<dataLine>
<lineColor>pink</lineColor>
<lineStyle>none</lineStyle>
</dataLine>
<chartTitle>Pompkarakteristieken</chartTitle>
<interactionLine>
<lineColor>red</lineColor>
<lineStyle>solid;thick</lineStyle>
<lineWidth>2</lineWidth>
<labelText>30 Hz</labelText>
<referencePoints>
<xAttributeId>Q_30Hz</xAttributeId>
<yAttributeId>H_30Hz</yAttributeId>
</referencePoints>
</interactionLine>
<interactionLine>
<lineColor>blue</lineColor>
<lineStyle>solid</lineStyle>
<lineWidth>1</lineWidth>
<labelText>samenloop</labelText>
<referencePoints>
<point>
<x>600</x>
<y>5</y>
</point>
<point>
<x>700</x>
<y>4</y>
</point>
<point>
<x>1200</x>
<y>8</y>
</point>
</referencePoints>
</interactionLine>
<referencePointsLegendLabel>Q</referencePointsLegendLabel>
<coloredBackgroundArea>
<label>werkgebied0</label>
<color>green</color>
<opaquenessPercentage>25</opaquenessPercentage>
<point>
<x>600</x>
<y>5</y>
</point>
<point>
<x>700</x>
<y>4</y>
</point>
<point>
<x>1200</x>
<y>8</y>
</point>
</coloredBackgroundArea>
<coloredBackgroundArea>
<label>werkgebied1</label>
<color>green1</color>
<opaquenessPercentage>10</opaquenessPercentage>
<xAttributeId>enkelloop_Q</xAttributeId>
<yAttributeId>enkelloop_H</yAttributeId>
</coloredBackgroundArea>
<overrulingSeriesLabel>QH</overrulingSeriesLabel>
<markerVisibility>all</markerVisibility>
</addInteractionScatterPlot>
</singleParentLocationDisplays>
</displayGroup> |
| |
statisticalFunctionId
(since 2021.02) Using statisticalFunctionId it is possible to create a preconfigured display with any statistical function.
...