New in R2010

This page describes the changes made to UniPlot R2010 since version 5.15.

New in R2010.6

Bug Fixes

The following bugs have been fixed:

  • (ID2708): The regex function does not work correctly in the x64-UniPlot-Version.
  • (ID2798): If the Browser Window and the User Toolbar Window were arranged as tabbed Windows and one tab was dragged with the mouse to a new position UniPlot crashed with a memory access violation error.
  • (ID2799): If the Browser Window and the User Toolbar Window were stacked on each other the vertical size was lost after a new start of UniPlot.
  • (ID2801): If the Full Screen mode was terminated with the ESC key the the state of the docked windows was not saved.
  • (ID2802): The window to display variable values (Alt-3) has been removed. The window was causing problems. Anyway it is much easier to work with tool tips to display variable values.
  • (ID2803): Browser=>Mean Cycle: Because of an error in the dialog box, the function could not be used.
  • (ID2804): If obj_lookup was invoked with three parameters and the third parameter was an undefined variable UniPlot would crash.
  • (ID2806): ASAM-ODS Browser (RPC): The NC file name extension was not added to the file names. Because of this bug, the created NC files could not be used. This bug occurred only in UniPlot 5.15.4 and R2010.5.

New in R2010.5

Bug Fixes

The following bugs have been fixed:

  • (ID2774): Data=>Data Exchange (Page): The group name of MDF files caused problems, if the channel names in the template contained group names (Gxx_) and the channel names in the NC file did not contain the group names. UniPlot did not ignore the group name correctly.
  • (ID2775): Data=>Difference map and other functions (3D): The data hull is now calculated from the intersection of the two data hulls. Before, the data hull of the first map was used.
  • (ID2776): Context-Menü: If UniPlot was used on a computer with more than one monitor and UniPlot was not displayed on the main monitor, the context menu was displayed on the main monitor and the menu commands failed to execute.
  • (ID2778): IFILE-Import: Calculated channels were not or only partly saved in the NC file. Calculated channels containing multiple cycles were missing in the NC file. For channels that contained only one cycle, for example the mean pressure, crank angle information was missing. Now for each calculated channel the crank angle channel is created. The name is the name of the channel plus the prefix _CA.
  • (ID2776): auto_SetImportOptions: The function is obsolete. By accident the function was removed and scripts calling this function failed to execute. Now the function has been added to oldnames.ic.
  • (ID2781): XYZCreate: In older versions, all data points with a Z-value in the range -1e10 to +1e10 were removed. This range has been extended to -1e16 to +1e16.
  • (ID2782): excel_sheet_create: The function did not check if the given sheet name was a valid name. Now the name will be checked. Names longer than 31 characters will be clipped. The following characters will be replaced by an underscore: / \ * ? [ ].
  • (ID2783): File=>Import Options: New Option: Add Excel-Sheet-Name in NC file name.
  • (ID2784): auto_SetFilter: The function failed if the NC file contained more than one dimension. This is the case if the file contains string channels. Now, it is checked that all real channels belong to the same dimension.
  • (ID2786) 2D-Dataset: If the data was not monotone increasing and only symbols were displayed, the dataset could not be selected with the mouse.
  • (ID2787) nc_varget_missing: The function created an error if a text channel was accessed.
  • (ID2788): auto_ReplaceTextFromNCFile: In some cases a text was not replaced. This happened if the index of a text had the same value as a handle of a table object.
  • (ID2790): Import/Export of TDM Files: The addin could not be used because the library was build incorrectly.
  • (ID2792): ASAM-ODS Browser (RPC): The search dialog did not work sometimes. This problem was caused by an error in the DialogBox function. The function would delete an arbitrary object at the end of the function.
  • (ID2793): 3D-Dataset: The Thin-Plate-Spline was altered in UniPlot 5.10.1. The modification caused a different interpolation map for small numbers of data (5 to 10 points). This modifications has been reverted.

New in R2010.4

Bug Fixes

The following bugs have been fixed:

  • (ID2760): UTX-Filter: In some cases, the source data file was not closed correctly.
  • (ID2761): File=>More File Functions=>Synchronize Data Files: If the channels used to calculate the offset, were measured with different frequencies, e.g. 1 Hz and 10 Hz, the data was interpolated to the higher frequency. Sometimes this led to an incorrect calculated offset. Now the data is interpolated to the lower frequency, before the offset is calculated.
  • (ID2768): The Tools=>Create UniScript Library command failed in UniPlot R2010.3 because the usserv32.exe file was missing. Some script files were also missing. This bug was only in UniPlot R2010.3.
  • (ID2769): Dialog Box=>Data Filter: If the record filter contained more than one element, and the first channel was removed, the record filter could not be evaluated.
  • (ID2770): NC-Editor: If a write protected NC file was saved in the NC Editor under a new name, the write protection flag was copied as well. Now the write protection flag is removed for the destination file.

New in R2010.3


Bug Fixes

The following bugs have been fixed:

  • (ID2670): UniScript: #define statements inside a comment were evaluated:

    #define MY_SIZE   500
    #define MY_SIZE   10
    print MY_SIZE
  • (ID2716): NC_Edit: The values of character channels (char) could not be edited.

  • (ID2719): auto_ReplaceTextDialog: The function could not be invoked with the parameters hPage and ncid.

  • (ID2745): In some cases the modification of the x-axis-scaling causes a crash of UniPlot if the diagram contained 2D datasets. The error was only in UniPlot 5.15.1.

  • (ID2747): 2D-datasets with non monotonic increasing or decreasing x-coordinates could sometimes not selected with the mouse.

  • (ID2749): 2D-datasets with an x-Offset were invisible if the offset was to big. The x-scaling was ignored during the calculation of the visible data points. The error was only in UniPlot 5.15.1.

  • (ID2725): Excel-Import: The import failed if the Excel sheet name contained characters not allowed in file names (< > ? " : | \ / *). These characters will be replaced by a minus character (“-”).

  • (ID2740): Data Import: If the file contained more than 10000 channels the import failed with a memory access violation. (See also Data Import and Data Browser in Tools=>More Options).

New in R2010.2


  • Improved Graphic Performance: The drawing speed of curves with a high number of data points has increased. Scrolling speed through datasets has also significcantly improved.
  • New function to calculate a mean-cycle, minimum-cycle and maximum-cycle of cycle data. See Browser=>Mean Cycle.
  • auto_xy_LabelDataPoints: New Parameter hHorizontal.

Bug Fixes

The following bugs have been fixed:

  • (ID2575): Data Tooltip: The tooltips Cursor_Tooltip were not displayed, if the Windows Registry contained the following key with a value set to 0:

                       Explorer\Advanced\EnableBalloonTips = 0 (REG_DWORD)

    Instead of Balloon tooltips, a standard tooltip will be displayed.

  • (ID2656): NC_Edit: The “Record-Filter” option was disabled when the dialog box was opened.

  • (ID2657): Formula Interpreter: If the first variable in a formula was a constant, the formula could not be evaluated.

  • (ID2668): Data=>Data Exchange (Page): If the channel names in the template contained special characters, e.g. n.eng and the the option Allow special chars in channel names (Tools=>More Options) was enabled, the nc file contained a channel (n_eng) which was marked as invalid. See also error ID2676.

  • (ID2669): UTX-Filter: For text and Excel files the first 1024 rows are read to determine the channel data type (number, text, date,...). Before only 256 rows were read.

  • (ID2673): Bar Plot: If a dataset was displayed as a bar plot, it could not be selected by clicking in the bar area. The dataset could only be selected by clicking in the center of the top edge.

  • (ID2675): Alt+Tab: If the data browser dialog box was open (NC_Edit), the UniPlot icon was not displayed in the application selection window.

  • (ID2676): nc_varid: Since UniPlot 5.14.5 it is possible that channel names may contain special characters (., -, +, $, #, ~, !, ^, &, %). If this option was enabled in the (Tools=>More Options) dialog box, the function did not handle channel names as documented.

    Example: If the nc file contained a channel a_text and a different nc file contained a channel a.text, nc_varid(ncid, "a.test") would return -1 for the channel name a_text. Now the function returns a valid id for both cases.

  • (ID2679): File=>Edit Alias Table: The alias text could not handle newline characters. To add a newline to an alias text type in the characters \n. Example: Line1\nLine2.

  • (ID2682): The excel report could not be used with Excel 2007. The number of columns was limited to 255. Now an Excel 2007 report can handle up to 18384 columns. To use Excel templates with more than 255 columns Excel 2007 must be installed and the template must have been created with Excel 2007.

  • (ID2704): Formula Interpreter: If the user opened the context menu in the data browser by clicking on the row number in the data grid and then selected the command Add/Edit Formula Channel, UniPlot would display a script error (Index out of Range).

  • (ID2706): Help System: If UniPlot is installed on a network drive the help files will be copied during startup into the UniPlot User directory. Because of a Microsoft security update, the Microsoft HTML Help system may not work when you open the UniPlot help system from a remote location.

New in R2010

UniPlot version numbering has been changed. The version number is the year followed by the letter “R” for release. Updates are denoted by a number behind the year value. The first update will have the version number “R2010.1”. The internal version number still uses the scheme <main version number>.<sub version number>.<patch>. The internal version number of R2010 is 5.20.0.


System Requirements

  • UniScript-Libraries build with older versions cannot be used with UniPlot R2010. They must be rebuilt using UniPlot R2010 (*.icl-Files, see saveiclib).

New Data-Browser Window

The new data browser displays all available channels including the channel unit and the number of data points in a list box. The browser supports drag-and-drop. One or more channel names can be dragged from the list into the page to create new datasets. The drop target y-axis will be highlighted. If you do not select a y-axis, a new diagram will be created.


The Load button can be used to replace the data of an existing dataset. To open the currently active NC-file, click on the Edit button.

A right click in the data browser will display a popup menu with settings and options.

See also The Data Browser Window.

UniPlot 64-Bit

UniPlot 2010 is available in two versions: UniPlot 64-bit and UniPlot 32-bit. The 64-bit version accesses more than 3 GB of main memory and can be used. with 64-bit Windows.

The 32-bit version can still be used with Windows 64-bit. It can run in a 32-bit compatibility mode, using the Microsoft WoW64 Technology, but only uses up to 3 GB of memory, more ...

Improvements to handle large datasets

The toolbar buttons

  • Increase X-Axis Range, Reduce X-Axis Range,
  • X-Scroll left, X-Scroll right,
  • One cycle left, One cycle right,
  • Zoom In, Zoom out

of the Axis Scaling toolbar will trigger a reload of missing data from the datafile into the dataset.


more ...

More Enhancements

  • A number of UniScript files have been renamed. Some of the files have been moved into other sub folders in the script directory.
  • New Help Option: UniPlot can use online help from the UniPlot Internet site using a Web-Browser.
  • New “Dot-Commands” like .dir or .cd for the UniScript command window. A list with the the supported commands can be found in View=>Command Window.
  • Improved stacked diagrams. New handles in a stacked diagram simplify the process of changing the size and position of a stacked diagram.
  • The text editor (RichEditControl) has been replaced with the editor. It can be used to edit TEXT, XML and UniScript files. The editor can handle big data files (> 100MB) and supports Undo/Redo. See also Overview Editors.
  • Axes Linking between pages: So far a diagram’s X and Y axes could only be linked to another axis in the same page. Now axes can be linked to any axis of the same type anywhere in the document. To create a link, right click on a diagram and choose Diagram=>Link Axes Scales.
  • A restart of UniPlot is no longer necessary, if an addin is enabled (see Tools=>Add-In Manager).
  • New Addin to import KiBox files (see Import of KiBox Files).
  • Documentation added for the Dialogbox=>Datasource-Information dialog box.

New UniScript Functions

  New Functions in UniPlot R2010 (5.20)
AppHelpOptions AppHelpOptions sets or returns help setting options.
Browser_DblClickCallback Browser_DblClickCallback is invoked by the framework if an element in the channel list box is double-clicked.
Browser_DropCallback Browser_DropCallback is invoked by the framework if channel names are dropped into a UniPlot document or the main window.
Browser_EditCallback Browser_EditCallback is invoked by the framework if the Edit button in the data browser window is clicked.
Browser_FileChangeCallback Browser_FileChangeCallback is invoked by the framework if the file name is changed in the file combo box.
Browser_GetControlSelection Browser_GetControlSelection returns the selected elements in the controls of the data browser window.
Browser_GetDataFile Browser_GetDataFile returns the name of the active data file displayed in the data browser window.
Browser_IsVisible Browser_IsVisible checks if the data browser window is visible.
Browser_LoadCallback Browser_LoadCallback is invoked by the framework if the Load button is clicked.
Browser_Replot Browser_Replot replots the data browser window.
Browser_SetControlData Browser_SetControlData sets the data in the data browser control elements.
Browser_SetControlSelection Browser_SetControlSelection sets the selection in the data browser control elements.
Browser_SetDataFile Browser_SetDataFile opens a data file in the Data-Browser window.
Browser_Show Browser_Show displays or hides the data browser window.
Browser_SortCallback Browser_SortCallback is invoked by the framework if a title button in the channel list is clicked.
DS_GetKeys DS_GetKeys returns all keys of the dataset map “Datasource”.
DS_GetNCFileName DS_GetNCFileName returns the netCDF file name used to load the data into the dataset.
DS_GetOriginFileName DS_GetOriginFileName returns the file name that was converted to the UniPlot data file used to load the data.
DS_GetValue DS_GetValue returns an attribute from the “Datasource” map.
DS_RemoveValue DS_RemoveValue removes a Key-Value pair from the datasource map “Datasource”.
DS_SetDataSource DS_SetDataSource sets the data file name and the channel names in the “Datasource” map of a dataset.
DS_SetValue DS_SetValue sets a value in the “Datasource” map.
DocAddEmptyPages DocAddEmptyPages adds one or more empty pages to a document.
DocGetLoadCallback DocGetLoadCallback returns the callback function name, that was set with DocSetLoadCallback.
DocGetUserData DocGetUserData returns the UniScript object that was linked to the document with DocSetUserData
DocIsVisible DocIsVisible checks if the document window is visible or hidden.
DocSetLoadCallback DocSetLoadCallback sets a callback function. The callback function will be invoked before a document page is loaded.
DocSetUserData With DocSetUserData a UniScript object can be linked to a document.
NC_TimeInterpolation NC_TimeInterpolation interpolates the channels of an NC file with different time channels onto one time base.
akimaspline2 akimaspline2 executes a 2-dimensional “matrix to matrix” interpolation.
fspline2 fspline2 executes a 2-dimensional “matrix to matrix” interpolation.
griddata griddata creates a regular grid of arbitrarily distributed data triples.
interpol2 interpol2 executes a 2-dimensional “matrix to matrix” interpolation.
rspline2 rspline2 executes a 2-dimensional “matrix to matrix” interpolation.
smooth2 smooth2 is a function to smooth a matrix using the Savitzky-Golay algorthim.
spline2 spline2 executes a 2-dimensional “matrix to matrix” interpolation.
xml_esc xml_esc escapes special XML characters.
xml_parse_string xml_parse_string converts a valid XML string into a UniScript object.
xml_save_node xml_save_node saves a UniScript object as an XML file.

Modified UniScript Functions

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

  Modified Functions in UniPlot R2010 (5.20)
AppHelp AppHelp opens the UniPlot help system.
EdCreate EdCreate creates a new editor.
RegOpen Opens a registry key.
RegisterFunction RegisterFunction registers a function from a dynamic link library (DLL) to the UniScript symbol table. After a function is registered, the function can be called directly by UniScript.
UniScript.Load Loads a UniScript file.
XYAddData The XYAddData function adds data to an existing dataset.
XYGetData XYGetData returns all data points or a clipping of data points.
XYReload XYReload loads data.
XYSetData XYSetData sets the xy-coordinates of a dataset.
XYZCreate XYZCreate creates a new 3D dataset. The 3D dataset can be created from scattered XYZ triples or from a rectangular grid (matrix).
loadiclib loadiclib loads a UniScript library which contains UniScript functions in binary form.
saveiclib saveiclib saves all loaded UniScript functions in an UniScript Library file.

Bug Fixes

All bug fixes in the current 5.15 version have been fixed in R2010 as well (see What’s New in UniPlot 5.15).