What’s New in UniPlot 5.9.0

This page describes the changes made to UniPlot 5.9 since version 5.8.2.

New Features

  • Improved handling of large datasets with millions of data points. See Processing Large Data Files.

  • The Data Browser: The time to open the data browser for large data files has been reduced.

  • Extended function to insert objects from clipboard into a UniPlot page. The user can choose the format the data is inserted into UniPlot. See Edit=>Paste.

  • UniPlot has been compiled using Visual Studio C++ 2008, the new MFC and the new C-Runtime MSVCRT library.

  • 3D Classification of a XYZ-Dataset: Modified dialog box to select channels. The number of decimal places of the table output can be specified.

  • Import of DIAdem files: To reduce memory usage text data file (ASCII) are processed in chunks.

  • ASAM-ODS Browser (RPC): New command to search for tests has been added. It can search for tests in a date range (e.g. Tests of the last 10 days) and/or for attribute values using wildcards (e.g. iName LIKE 'x12*').


New UniScript Functions

  New Functions in UniPlot 5.9
AppGetGlobalOption AppGetGlobalOption returns a value of an option from Tools=>More Options.
AppSetGlobalOption AppSetGlobalOption sets a value of an option from Tools=>More Options.
ExcelRead3 ExcelRead3 reads MS-Excel files (.xls).
NC_MapInterpolation NC_MapInterpolation calculates new channels by map interpolation and adds the new channels to an NC file.
PagePaste PagePaste inserts clipboard data into a UniPlot document page. The function supports only the OLE format and the UniPlot format.
XYClip XYClip clips the specified 2D dataset to the x-range displayed in the diagram.
XYGetFirstPoint XYGetFirstPoint returns the position (index) of the first loaded data point.
XYReload XYReload loads data.
XYSetFirstPoint XYSetFirstPoint is used internally. The function is used if only a range of data points are loaded.
aop_getvale aop_getvale returns values of application elements.
clipboard_enum clipboard_enum returns an integer array of clipboard formats.
clipboard_format_name clipboard_format_name returns the format name for a given format index. See clipboard_enum.
clipboard_get_data clipboard_get_data returns the clipboard data as a string. The sting can contain 0-characters.
clipboard_is clipboard_is checks if the given format is in the clipboard.
excel_get_style_index excel_get_style_index returns the index of cell style.
excel_get_style_map excel_get_style_map returns a map with style names.
ftf_close ftf_close frees all memory used by the context.
ftf_get_row_num ftf_get_row_num returns a real matrix loaded with ftf_get_rows.
ftf_get_row_str ftf_get_row_str returns a string matrix loaded with ftf_get_rows.
ftf_get_row_type ftf_get_row_type returns a type matrix loaded with ftf_get_rows.
ftf_get_rows ftf_get_rows loads the next nRowsMax rows.
ftf_get_size ftf_get_size returns the number of rows and columns of the given text file.
ftf_open ftf_open reads text files (ASCII) containing rows and columns of text, numbers and empty fields. The function can be used instead of FileToField. ftf_open can read large data files with hundreds of Megabytes.
ftf_rewind ftf_rewind sets the pointer to the beginning of the file.
registry_load registry_load copies all UniPlot settings from the specified XML file to the Windows registry.
registry_save registry_save copies all UniPlot settings from the Windows registry to the specified XML file.

Modified UniScript Functions

The changes are listed in the history table at the end of the function description.

  Modified Functions in UniPlot 5.9
PageInsertFromClipboard PageInsertFromClipboard pastes the clipboard contents into the given page.
TYSetData TYSetData sets the coordinates of a y/t datasets (1D-dataset).
XYSetData XYSetData sets the xy-coordinates of a dataset.
auto_GetData auto_GetData returns the data of the given channels as a matrix. The function can only be used to read numeric data channels.
fwrite fwrite writes data into a file.
mem_dump mem_dump prints a string as a memory block into the command window.

Bug Fixes

The following bugs have been fixed:

  • (ID1827): Map Dataset: Sometimes color filling and isolines did not match. This error occurred if the values of the interpolation matrix and the isolines were identical. The error occurred frequently if the matrix contained integer numbers.

  • (ID1828): A table object could not be moved using the arrow keys.

  • (ID1834): The Data Browser: The browser could not display files with more than approx. 5 million rows. Now it is possible to display files with multi-million points. Limit for netCDF-up files: 2 billion points per channel.

  • (ID1835): The number of data points of a netCDF-up file was limited to approx. 260,000,000 points. Now this limit is 2 billion points (see also Application Limits).

  • (ID1836): The marker output of 2D datasets can be very slow for large datasets. Therefore markers are only displayed if the number of displayed markers / Marker-Frequency < 10000.

  • (ID1839): Windows-Vista: Display error in the status bar.

  • (ID1842) UniScript error in UniPlot 5.8.2: “/” characters were not allowed in a “define” statement. Example: #define TEST "a/b".

  • (ID1843) Small display error with diagrams: Sometimes the position of the grid lines and the axes tics did not match. The offset was 1 pixel due to a rounding error. The error can still occur in some cases.

  • (ID1851): AppHelp did not work with 2 parameters. The help file opened but the topic did not open. Example:

    AppHelp("sin", GetRootDirectory() + "help/up-en.chm")
  • (ID1852): The File=>Close (Save Compact) command could lead to data loss. If the command was used for a new document and the “Cancel” button was pressed in the SaveAs dialog, the file was closed without saving.

  • (ID1873): Addin 3D Classification of a XYZ-Dataset: The values were written into the file without decimal places (Format %8.1g). Now 5 significant digits are saved (%10.5g) or the user can set the number of decimal places.

  • (ID1867): ExcelGetSheetNames sometimes did not return sheet names for large Excel files. Only the first sheet could be accessed.

  • (ID1890): excel_sheet_put_rows only worked with 2 parameters.