Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Use elements leftAxis and  rightAxis to confiure the axes separately.If  the  rightAxis is configured,  the leftAxis must be configured  too.
If the optional attributes min and  max are not configured, then subplot attributes  min and max are used.

An example :

Code Block
languagexml
titleleftAxis, rightAxis example (click to expand)
linenumberstrue
collapsetrue
<subplot> 
       <leftAxis min="-10" max="100"/>
		<axisLabel>Label left axis</axisLabel> 
   		<lowerMarginPercentage>10</lowerMarginPercentage>
   		<upperMarginPercentage>20</upperMarginPercentage>
	</leftAxis>	
			
    <rightAxis min="20" max="50"/>
		<axisLabel>Label right axis</axisLabel> 
   		<lowerMarginPercentage>5</lowerMarginPercentage>
   		<upperMarginPercentage>5</upperMarginPercentage>
	</rightAxis>	
.....

If the optional attributes min and  max are not configured, then subplot attributes  min and max are used.

inverted

This tag can be used to invert the y-axis of a plot. Below a screenshot of an inverted graph. In the example the timeseries with parameter RAIM is inverted.

...

Use the <area> element in combination with a <lineStyle> to obtain vertical lines.

Image Removed

Code Block
languagexml
titlearea example (click to expand)
linenumberstrue
collapsetrue
<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 Added

clusteredBars

This option makes it possible to cluster bars per timestep. The config example below shows how clustered bars are displayed and configured:
Image Removed

Code Block
languagexml
titleclusteredBars example (click to expand)
linenumberstrue
collapsetrue
<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 Added

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.

...

(Since 2016.02) By using a chainage location set in a time series set of a plot in the display groups, a longitudinal profile can be plot based on scalar time series for different locations.
Notice that it is not possible to combine a longitudinal plot in with a standard plot (having time on the X-axis). Furthermore, it is not possible to use it for relatedLocations, and also thresholds will not be shown.

Code Block
languagexml
titlechainageLocationSetId example (click to expand)
linenumberstrue
collapsetrue
	<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

Notice that it is not possible to combine a longitudinal plot in with a standard plot (having time on the X-axis). Furthermore, it is not possible to use it for relatedLocations, and also thresholds will not be shown.

domainParameterId domainParameterId 

Single Domain Axis Time Series / 1D Spectra plots

Time series with one domain axis are displayed as one xy chart per time step, like longitudinal profiles. A slider is used to navigate through time.Image Removed

Code Block
languagexml
titledomainParameterId example (click to expand)
linenumberstrue
collapsetrue
<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 Added

Dual Domain Axis Time Series / 2D Polar Spectra plots

When a second domain axis is available this will always be used as direction for a polar plot by the time series dialog. When second domain axis is not a directional parameter or the time series has more than two domain axes the time series can not be diplayed the time series dialog with the current functionalityImage Removed

Code Block
languagexml
titledomainParameterId example (click to expand)
linenumberstrue
collapsetrue
<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 Added

Anchor
visibleInTable
visibleInTable
visibleInTable, visibleInPlot

...

Note

Making stacked graphs

Deprecated subplot attribute stackPlot (deprecated since 2014.02) - was used to create an area plot into a plot of stacked areas.
Instead use <subPlotType>stack</subPlotType>


Code Block
languagexml
titleadditionalTimeSeries example (click to expand)
linenumberstrue
collapsetrue
	<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>

Image Modified

displayGroup elements - displayGroup

...

currentSystemTime

view period x-axis (start-end)

12 Aug.2012

1 Oct.2011 - 30 Sept.2012

12 Sept.2012

1 Oct.2012 - 30 Sept.2013

12 Oct.2012

1 Oct.2012 - 30 Sept.2013

Code Block
languagexml
titlestartForwardLookingPeriod example (click to expand)
linenumberstrue
collapsetrue
<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>

...

Image Modified

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.

...

By default all time series with the same location are paired up, but this behavior can be changed with the following configuration options.

  • when there are 2 time series they will be paired up, regardless of their location or parameter (since 2019.02)
  • createPairsByMatchingParameter: time series with the same parameter can be paired (since 2017.02)
  • markerVisibility: choose whether all data points, none data points or onlyLast data point is visualised (since 2019.02)
  • matchTimeSeriesPair: pair up the time series based on their configured order: timeSeriesOrder (since 2020.02)
  • draw colored areas based on configured points. Also, in the plot, the grid lines in the background and the interaction line are visible, and legends are added next to the plot. (since 2020.02)

...

An example of  scatter plot configuration that uses all optional elements, together with the resulting plot:

Code Block
languagexml
titleScatter plot example (click to expand)
linenumberstrue
collapsetrue
<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>

Image Modified


Example from Operational system:

...