BlueM.Wave: Difference between revisions

From BlueM
Jump to navigation Jump to search
m (→‎Error values: add icon)
(→‎link= Import time series: restructure and add HYBNAT)
 
(2 intermediate revisions by the same user not shown)
Line 10: Line 10:
===[[File:Icon_chart_line_add.png|link=]] Import time series===
===[[File:Icon_chart_line_add.png|link=]] Import time series===
'''Supported file formats:'''
'''Supported file formats:'''
* [[WEL-Format | WEL]] ([[WEL-Format (BlueM)|BlueM]], [[WEL-Format (GISMO)|GISMO]], [[WEL-Format (TALSIM)|TALSIM]])
* [[WEL-Format_(BlueM)|BlueM.Sim result files]]: <code>*.WEL</code>, <code>*.KWL</code>
* [[BIN-Format | SYDRO binary format (BIN)]]
* [[DFS0-Format | DHI MIKE DFS0 format]]: <code>*.DFS0</code>
* [[DFS0-Format | DHI MIKE DFS0 format]]
* [[WEL-Format (GISMO)|GISMO result files]]: <code>*.WEL</code>
* [[HYDRO_AS-2D result files]]
* [[HYBNAT result files]]: <code>*.WEL</code>, <code>*.BCS</code>
* [[Hystem-Extran file formats]]: "Regendatei" and "Wellendatei"
* [[HYDRO_AS-2D result files]]: <code>*.DAT</code>
* [[JAMS result files]]: JAMS/J2000/J2K/J2000g timeseries results
* [[Hystem-Extran file formats]]: Regendatei (<code>*.REG</code>, <code>*.DAT</code>) and Wellendatei (<code>*.WEL</code>)
* [[PRMS result files]]
* [[JAMS result files]]: JAMS/J2000/J2K/J2000g timeseries results (<code>*.DAT</code>)
* [[SMUSI file formats]]: ASC result files and REG files
* [[PRMS result files]]: annual summary, monthly summary, DPOUT (<code>*.OUT</code>) and statistic variables result file (<code>*.DAT</code>)
* [[SWMM file formats]]: SWMM5 binary output format, routing interface files, LID report files, SWMM time series files
* [[SMUSI file formats]]: <code>*.ASC</code> result files and <code>*.REG</code> input files
* [[SMB-Format | SMB]]  
* [[SWMM file formats]]: SWMM5 binary output format (<code>*.OUT</code>), routing interface files (<code>*.TXT</code>), LID report files (<code>*.TXT</code>), SWMM time series files (<code>*.DAT</code>)
* [[UVF-Format | UVF]] (Universelles Variables Format)
* [[SMB-Format | SIMBA file format]]: <code>*.SMB</code>
* [[ZRE-Format | ZRE format]]
* [[Talsim-NG file formats]]: time series results (<code>*.WEL</code>, <code>*.WBL</code>) and binary input time series (<code>*.BIN</code>)
* [[ZRXP-Format | ZRXP format]]
* [[UVF-Format | UVF format]]: Universelles Variables Format (<code>*.UVF</code>)
* and generic text files (e.g. [[CSV-Format|CSV]] and [[TXT-Format|TXT]])
* [[ZRE-Format | ZRE format]]: <code>*.ZRE</code>
* [[ZRXP-Format | ZRXP format]]: <code>*.ZRX</code>, <code>*.ZRXP</code>
* and [[CSV-Format|generic text files]] (e.g. <code>*.CSV</code>, <code>*.TXT</code>)


[[File:Icon_chart_curve_link.png|link=]] Use a '''[[Wave project file]]''' (<code>*.wvp</code>) to quickly import multiple series from multiple files at once.
[[File:Icon_chart_curve_link.png|link=]] Use a '''[[Wave project file]]''' (<code>*.WVP</code>) to quickly import multiple series from multiple files at once.


'''Drag&Drop''' files onto Wave to import them quickly.
'''Drag&Drop''' files onto Wave to import them quickly.
Line 74: Line 76:
* [[Wave:Accumulate|Accumulate]]: Compute a new time series that contains the cumulative values of the original series
* [[Wave:Accumulate|Accumulate]]: Compute a new time series that contains the cumulative values of the original series
* [[Wave:Autocorrelation|Autocorrelation]]: Autocorrelation analysis for analyzing time series periodicity
* [[Wave:Autocorrelation|Autocorrelation]]: Autocorrelation analysis for analyzing time series periodicity
* [[Wave:AnnualRecurrenceProbability|Annual recurrence probability]]: Annual recurrence probability of annual maxima using plotting position
* [[Wave:AnnualStatistics|Annual statistics]]: Compute various statistical parameters (min, max, average) of a time series
* [[Wave:AnnualStatistics|Annual statistics]]: Compute various statistical parameters (min, max, average) of a time series
* [[Wave:Calculator|Calculator]]: Performs a mathematical operation on one or more time series
* [[Wave:Calculator|Calculator]]: Performs a mathematical operation on one or more time series
* [[Wave:ChangeTimestep|ChangeTimestep]]: Make a time series equidistant with a user-specified timestep
* [[Wave:ChangeTimestep|Change timestep]]: Make a time series equidistant with a user-specified timestep
* [[Wave:Comparison|Comparison]]: Plot two time series against each other and compute a linear regression line
* [[Wave:Comparison|Comparison]]: Plot two time series against each other and compute a linear regression line
* [[Wave:Decumulate|Decumulate]]: Compute a new time series that consists of the decumulated values of the original series
* [[Wave:Decumulate|Decumulate]]: Compute a new time series that consists of the decumulated values of the original series
Line 82: Line 85:
* [[Wave:GoodnessOfFit|Goodness of fit]] (volume error, sum of squares error, Nash-Sutcliffe efficiency, etc.)
* [[Wave:GoodnessOfFit|Goodness of fit]] (volume error, sum of squares error, Nash-Sutcliffe efficiency, etc.)
* [[Wave:Histogram|Histogram]]
* [[Wave:Histogram|Histogram]]
* [[Wave:LinearRegression|LinearRegression]]: Fills gaps (NaN values and missing timestamps) in one time series by applying a linear regression relationship with a second time series
* [[Wave:LinearRegression|Linear regression]]: Fills gaps (NaN values and missing timestamps) in one time series by applying a linear regression relationship with a second time series
* [[Wave:MonthlyStatistics|Monthly statistics]]
* [[Wave:MonthlyStatistics|Monthly statistics]]
* [[Wave:TimestepAnalysis|Timestep analysis]]: Calculate the timestep between nodes in a user-specified unit
* [[Wave:TimestepAnalysis|Timestep analysis]]: Calculate the timestep between nodes in a user-specified unit
Line 89: Line 92:
File:Wave Cumulative.png|Accumulate|link=Wave:Accumulate
File:Wave Cumulative.png|Accumulate|link=Wave:Accumulate
File:Wave Autocorrelation.png|Autocorrelation|link=Wave:Autocorrelation
File:Wave Autocorrelation.png|Autocorrelation|link=Wave:Autocorrelation
File:Wave AnnualRecurrenceProbability.png|Annual recurrence probability|link=Wave:AnnualRecurrenceProbability
File:Wave AnnualStatistics BoundingBoxes.png|Annual statistics|link=Wave:AnnualStatistics
File:Wave AnnualStatistics BoundingBoxes.png|Annual statistics|link=Wave:AnnualStatistics
File:Wave Calculator.png|Calculator|link=Wave:Calculator
File:Wave Calculator.png|Calculator|link=Wave:Calculator

Latest revision as of 11:10, 11 December 2023

Wave.png Wave | Download | Development

Screenshot

Description

Wave is a tool for displaying, analyzing and importing and exporting time series.

Features

Icon chart line add.png Import time series

Supported file formats:

Icon chart curve link.png Use a Wave project file (*.WVP) to quickly import multiple series from multiple files at once.

Drag&Drop files onto Wave to import them quickly.

It is also possible to manually Icon chart line edit.png enter time series, or Icon page paste.png paste clipboard data from Excel and Talsim-NG.

Visualization & Navigation

Display time series in a highly Icon chart curve edit.png customizable chart (provided by TeeChart)

Time series values and markers (animation)
  • Icon application split.png An overview chart shows you the full extent of the time series and the period currently displayed in the main chart.
  • Icons zoom.png Use the toolbar buttons or the mouse to zoom or pan either in the main chart or the overview chart. Use the left mouse button or the mouse scroll wheel to zoom, hold the right mouse button to pan.
  • Icon controller.png Use the navigation bar to set a custom display period and to navigate by a fixed time period or to the start/end Icons navigate.png.
  • Icon table.png Display tabular time series values and optionally show markers Icon comments.png for selected rows in the main chart

Series management

Time series properties
  • Icon accept split.png Quickly switch time series on and off using the check boxes in the legend or activate/deactivate all series at once using the button in the toolbar.
  • Icon table edit.png Display and edit time series properties in a table with optional statistics.
  • Icon shape align bottom.png Manage axes: When importing time series, series are automatically assigned to different axes depending on their unit.

Save & Export

Icon chart curve link.png Save project files (*.wvp) with references to time series from file sources.

Icon chart pie.png Save charts to the native TeeChart format (TEN-File) to preserve all data and formatting (for exceptions, see known issues below).

Icon chart pie.png Export charts as image files (PNG, JPG, BMP).

Icon page copy.png Copy the chart to the clipboard as a PNG image.

Icon page white go.png Export time series to the following formats:

Edit & Analyze

Editing functions:

  • Icon cut.png Cut time series to a specified time period or to another series' extent
  • Icon error convert.png Convert error values of a time series
  • Icon arrow join right.png Merge multiple time series into one while respecting priorities

Icon calculator.png Analysis functions:

  • Accumulate: Compute a new time series that contains the cumulative values of the original series
  • Autocorrelation: Autocorrelation analysis for analyzing time series periodicity
  • Annual recurrence probability: Annual recurrence probability of annual maxima using plotting position
  • Annual statistics: Compute various statistical parameters (min, max, average) of a time series
  • Calculator: Performs a mathematical operation on one or more time series
  • Change timestep: Make a time series equidistant with a user-specified timestep
  • Comparison: Plot two time series against each other and compute a linear regression line
  • Decumulate: Compute a new time series that consists of the decumulated values of the original series
  • Double sum curve
  • Goodness of fit (volume error, sum of squares error, Nash-Sutcliffe efficiency, etc.)
  • Histogram
  • Linear regression: Fills gaps (NaN values and missing timestamps) in one time series by applying a linear regression relationship with a second time series
  • Monthly statistics
  • Timestep analysis: Calculate the timestep between nodes in a user-specified unit

Comandline interface

Wave has a commandline interface for importing and converting time series, see Wave:CLI for details.

API

The API is used e.g. by BlueM.Opt and BlueM.Win but allows using Wave from within any .NET project.

See the API docs here: https://bluemodel.github.io/BlueM.Wave/api/

Notes

Error values

Visualization of NaN values
  • "NaN", "Infinity" and "-Infinity" in import files are recognized and accepted.
  • Unreadable values are converted to NaN during import.
  • If a file format has a specified error value (e.g. -777 for ZRXP and UVF), then any corresponding entries are also converted to NaN.
  • NaN values are displayed as gaps in the chart and are ignored when performing analysis functions.
  • Custom, user-specified values can be converted to NaN Icon error convert.png after import.
  • NaN values can be visualized in the chart by pressing a Icon chart line error.png button (see screenshot).

Volume property

Wave calculates and displays the Volume property of a time series (e.g. for GoodnessOfFit analysis or in the properties window), if a time series' unit ends with "/s", "/min", "/h" or "/d" (e.g. "m³/s", "mm/h", etc.) and its interpretation is either Instantaneous, BlockLeft or BlockRight, by integrating the values over time while respecting the interpretation. Time series with other units or interpretations only have the Sum property. NaN nodes cause the adjacent timesteps to not contribute to the volume (depends on the interpretation).

Supported date range

Wave supports dates between 01.01.0001 and 31.12.9999.

The chart display can only show dates between 01.01.0100 and 31.12.9000. Time series with dates before 01.01.0100 and after 31.12.9000 are cut for display purposes, but all nodes are still available for analysis and export and are shown in the properties and time series values dialogs. (#68)

Downloads

Download BlueM.Wave from GitHub: https://github.com/bluemodel/BlueM.Wave/releases/latest

Known Issues

  • When saving a chart to the native TEN format of TeeChart, certain Timeseries properties such as Interpretation, Datasource and sometimes Unit are lost.
  • When saving a chart to the native TEN format of TeeChart, any NaN values contained in the series are lost (i.e. the nodes with the NaN values are omitted from the series). fixed in v1.9.1
  • more issues: https://github.com/bluemodel/BlueM.Wave/issues

Development