Igor Pro 9.03 Beta 1 Released

A new beta release of Igor Pro 9 is now available for all platforms. A list of notable changes for this release is included below. If you've reported an issue to us and we've told you it's been fixed, the fix will be included in this release, even if it's not mentioned below.

If you have enabled checking for beta releases (select the Misc→Miscellaneous Settings menu item to open the Miscellaneous Settings dialog, select the Updates category, then select the "Also Check for Beta Releases" checkbox) you can select the Help→Updates for Igor Pro menu item within Igor Pro 9 to get the latest beta release. Otherwise you can go to the Downloads page to download the installer manually.

Macintosh users: When you drag the Igor Pro 9 Folder from the new installer into your Applications folder, the OS may ask you whether you want to merge the folders or replace the existing folder. You should select "Replace".

See also: Igor Pro on macOS 10.15 (Catalina) and later

Notable Changes in Igor Pro 9.03 Beta 1



  • Line Continuation can be used more extensively when initializing multi-dimensional waves from explicit row and column values. For example:
    Function foo()
        // each line populates a column of 2 rows:
        Make/O w2Rows3Columns = {{1, 2}, \
                                 {3, 4}, \
                                 {5, 6}}



  • GraphWaveDraw, when no vertical axis is specified, defaults to the first vertical axis in the graph, not the left axis. Similarly, the horizontal axis defaults to the first horizontal axis, not the bottom axis. (This change is most likely to affect graphs created with NewImage because NewImage doesn't create a bottom axis.)
  • DrawAction sets S_recreation to "" when the named drawing layer doesn't exist or the drawing layer is empty; previously S_recreation was null. An if (V_Flag == 0) test can still be used to avoid using S_recreation in those situations.


  • Windows: Fixed ability to use Settings.txt file to install and activate Igor at the same time (see the Igor Pro 9 Folder\Miscellaneous\Silent Igor Installation directory for more information on this feature). This feature was broken due to an installer bug. A fixed 9.02 English installer was uploaded on August 15, 2023.
  • Tag/L=3 and /L=4 work once more (fixes bug since Igor 8.04). /L=3 is reverse arrow, and /L=4 is both arrows.
  • Fixed a crash in ImageHistModification when the input is a 3D wave.
  • Fixed a bug in ImageEdgeDetection when using the /O flag.
  • Fixed a bug in ImageInterpolate affine which resulted in an output image that was 1 pixel smaller than expected.
  • Windows: Fixed copy and paste between Igor tables when copying/pasting multidimensional waves. This bug was only present in the 32-bit Igor.exe application.
  • Fixed a rare bug that caused Merging Experiments to be unable to locate and execute the recreation macros in the merging experiment.
  • Fixed a bug in StatsLogNormalPDF that affected the results for non-zero mu values.
  • Fixed a bug: If the Table Misc Setting "Use Special Symbols for Control Characters" is turned on, clicking in a cell with a control character would add "(truncated to N bytes)" to the text in the table editor box. It could be actually entered into the wave, too!
  • Fixed bugs that resulted in a dependency that would not allow killing a wave that was used with a ValDisplay control after the control was destroyed. This only happened if the KillControl command was issued from the command line, or if the control was selected and you pressed Backspace or Delete.
  • Fixed a bug that caused "%1" to appear in certain error messages in the Make Waves dialog instead of the name of a wave.
  • Fixed a crash when a PopupMenu control's menu had a disabled item in it and you tried to select that disabled item using the Down Arrow or Up Arrow key.
  • Fixed a positioning bug for a PopupMenu control that caused the position to change by 1 pixel each time it was updated, and another bug where on Windows the menu button was drawn 1 pixel above the bounds/selection rectangle.
  • In the Find In Multiple Windows dialog, new items were added to the history of search strings at the bottom of the list. If the list grew beyond a certain length, new items did not appear in the list.
  • ReorderImages _front_ and _back_ were reversed such that they moved an image to the back or front, respectively.
  • Fixed bug in AxisInfo: The value for the keyword CATWAVEDF was not filled for a category plot. In fact, the value was present, but it was associated with the HOOK keyword.
  • Fixed a bug that made it impossible to change the position of a Gizmo subwindow in a graph.
  • Fixed rare image plot bug where the wrong color was used. The conditions were very specific: a floating point image wave where some values are NaN, a reversed color table wave, and "After Last Color" is set to "Use Last Color".
  • Page Layouts containing a ColorScale no longer always mark an opened experiment as unsaved.
  • Resample and other operations now properly complain about attempts to alter a wave locked by SetWaveLock.
  • MoveSubWindow fnum works properly when the screen resolution is greater than 96, even when panel expansion is used.
  • FReadLine in a function properly defaults tecOptions to 3, as it already did in a macro.
  • The Debugger steps over AbortOnRTE and AbortOnValue properly. Previously the debugger would step over AbortOnRTE (or AbortOnValue) and any following line of code (after executing that following line of code).
  • The Debugger's string inspector no longer complains that the string was truncated when actually it only contained non-Latin1 characters such as Japanese text.
  • Fixed a crash in the ModifyContour dialog that happened after setting number of levels to 0 and clicking "OK".
  • Fixed a crash when calling WaveClear on a function's Wave parameter is declared as Pass-By-Reference.
  • Fixed a crash if MoveWave moved a free wave into a data folder and the current data folder contained a wave with the same name as the wave being moved.


  • CIE Chromaticity.ipf:
    • Added ITU-R BT.2020 white point and primaries.
  • Enhancements and bug fixes for HeatMap_and_Dendrogram package:
    • Fixed a bug in cut line mouse handling on Windows
    • Added pre-processing option to transpose data matrix so that you can use row- or column-oriented data vectors.
    • Leaf labels may now be taken from the dimension labels of your data matrix
    • Provided public functions for Igor programmers, made others static
    • Added a "Post-Process" tab to the Modify Dendrogram panel and moved the "Graph Cluster • • • • • • Averages" button to the new tab. Added "Make Cluster Matrices" button and "List Clusters" button to the tab.
    • Fixed bugs in the destruction of data folders for dendrogram graphs caused by trying to delete objects that were part of dependency expressions.
  • Marker Standoff Contextual Menus.ipf:
    • New Graphing procedure that adds contextual menus for an individual trace and for all traces that sets marker standoff. Marker standoff works only in Lines and Markers mode (4), and leaves a standoff gap around the marker where the line isn't drawn. This Igor 8 feature is currently not settable in the Modify Trace Appearance Dialog.
  • New Polar Graphs package:
    • Polar graph axes, grid, labels, and fill-to-origin drawing can now be done on any single drawing layer by leveraging the new Virtual Drawing Layer procedures. (See the Layers... button). This is the new default drawing method. The old multi-drawing layer method is still supported and is used for pre-existing polar graphs.
    • An important improvement the virtual drawing layer feature brings is the ability to display a polar grid and fill-to-origin polygon in front of an image.
    • Added font styles and text shadow to polar axis labels. Fixed bugs related to the polar grid background not being updated when it should.
  • Virtual Drawing Layers.ipf:
    • Virtual drawing layers use group names to possibly delete and insert drawing objects as if they were in virtual drawing layers. Can be used in any window that supports the drawing tools: graphs, panels, layouts. Used by New Polar Graphs package.




Igor Pro 9

Learn More

Igor XOP Toolkit

Learn More

Igor NIDAQ Tools MX

Learn More