64-bit and 32-bit Architecture

64-bit architecture on both Windows and Macintosh allows increased memory usage and larger waves and datasets. 32-bit applications are still available on both platforms. If you're using a 64-bit operating system (most users are), you can use either the 32-bit or 64-bit application, depending on your needs.



Igor Pro 7 supports high resolution Retina displays on Macintosh and will soon support 4K displays on Windows. Icons and text are the proper size and Igor Control Panels scale up or down in size as expected with little programmer effort. Windows users should execute the following command on Igor's command line for more information:

DisplayHelpTopic "Control Panel Resolution on Windows"

Improved Undo/Redo

Unlimited undo/redo all procedure code and notebook editing, and for most interactive graph and layout adjustments.


Unicode Text

Igor Pro 7 uses Unicode internally, improving the rendering of mathematical symbols and foreign characters.


Camera Control

View live video and capture images from supported hardware cameras.


More Built-in Functionality

  • Most data file manipulation functionality previously provided by XOPs is now built-in.
    • XLLoadWave (load Excel files)
    • MLLoadWave* (load Matlab MAT files)
    • JCAMPLoadWave (load JCAMP-DX spectroscopy data)
    • GBLoadWave (load general binary data)
    • SoundLoadWave and SoundSaveWave (load and save sound files)

 * Requires Matlab 2010b or later.

  • Furthermore, functionality provided by the following Igor Pro 6 XOPs is now built in:
    • Gizmo
    • Data Browser
    • Interpolate2
    • GetInputState
    • HFSAndPosix (Macintosh only)

Over 40 New Built-in Commands


  • Wave Manipulation
    • SplitWave, FindDuplicates, SortColumns
    • ListToTextWave, ListToWaveRefWave, and WaveRefWaveToList (convert list based text to and from waves)
  • Analysis
    • JointHistogram (computes 2D, 3D, and 4D joint histograms)
    • SumSeries, SumDimension, FindContour, DPSS, MultiTaperPSD 
    • ICA (Independent component analysis)
  • Programming
    • URLRequest (gets and posts data from/to web servers, including SSL/TLS encryption)
    • GetEnvironmentVariable, SetEnvironmentVariable, and UnsetEnvironmentVariable (reading and setting the values of environment variables)
  • Mathematics
    • LambertW, gammaEuler, sinIntegral, cosIntegral, expIntegralE1, zeta, Dilogarithm
    • Jacobi elliptic functions JacobiSn and JacobiCn

Help→Contact Support Menu Item

Need to report a bug (or request support)? Select the new Help→Contact Support menu item to generate a template in your default email client that contains some information about your Igor Pro version and system information. Just fill in the email with a description of your problem and steps to reproduce and hit Send.


File→Start Another Igor Pro Instance Menu Item

Quickly start another instance of Igor Pro by selecting the File→Start Another Igor Pro Instance menu item. There's no longer any need to duplicate your Igor Pro bundle or use complicated system commands on Macintosh.



Procedure Editing


Command Window

Syntax highlighting now applies to the command line and command history window and the command line has improved support for display of multiple lines.

20 New Operations, Functions, and Options

For example, the new ImageSkeleton3D operation computes the skeleton of a 3D binary object by "thinning". Thinning is a layer-by-layer erosion until only the "skeleton" of an object remains.

In this example, the red structure shows the input to the ImageSkeleton3D operation and the blue structure the output.

Red shows a Z projection of a series of confocal images acquired from a dye-filled cerebellar Purkinje cell. Blue shows a Z projection of the "skeleton" of this neuron, calculated using the ImageSkeleton3D operation. Original filled cell data courtesy of A. Hayar, D. Pierce and K. Light.


New Dialogs

Added 14 interactive dialogs for image analysis operations, such as the Particle Analysis and Line Profile dialogs shown here.


Automatic Multithreading

When possible, computations are automatically done in parallel for a number of image processing operations, including ImageInterpolate, ImageLineProfile, ImageThreshold, ImageEdgeDetection, ImageRestore, ImageFilter, ImageBlend, ImageStats, and ImageRotate.

Data Browser

The Data Browser has been completely rewritten and modernized. Some great new features include:



Search text faster using the new Find bar, available in all windows that display text. All matches to the find string are highlighted at once so it's easier to find the instance you're looking for.

Finding text in multiple windows is easier than ever before with the new Find Text in Multiple Windows dialog.

You can even see a list of all found instances from within the dialog, and double click on an instance to bring up the corresponding text. 



The new Info Box can show multiple cursor pairs. Editing the point number will move the cursor to a new location.

The Graph Info Box can be shown by selecting the GraphShow Info menu item.


Help Browser

The Command Help tab of the Help Browser has a new Filter field that makes it easier to find commands.


Transparent Colors

You can now use partially transparent (non-opaque) colors in most places where color can be controlled, such as line and fill colors, by specifying an RGBA color value instead of an RGB color value (the A stands for alpha). From dialogs and menus, you can use the new Color Picker, which has built-in support for selecting non-opaque color values. For more information, execute the following on Igor's command line:

DisplayHelpTopic "Color Blending"

Error Shading

Error ranges on a graph can now be represented using shading. For more information, execute the following on Igor's command line:

DisplayHelpTopic "Error Shading"

Gradient Fills

Specify gradient fills for drawing elements, graph trace fills, and graph window and plot area fills using the new "gradient" keyword with the ModifyGraph, ModifyLayout, or SetDrawEnv operations. For more information, execute the following on Igor's command line:

DisplayHelpTopic "Gradient Fills"
  • Over 20 commands, including WaveStats and MatrixOp, have internal code that can automatically execute some or all calculations in multiple threads.  These operations are marked as "Automatically Multithreaded" in the Command Help tab of the Help Browser.  See the MultiThreadingControl operation for more information.
  • MatrixOP supports an additional 50 functions.

  • Most operations on text waves now execute much faster due to a backwards compatible implementation change of how text is stored.


Gizmo was completely rewritten for Igor Pro 7 and is now built-in. Gizmo windows and dialogs now function like other window types and dialogs.


New Gizmo Object Types


Improved Numerical Labels

Numerical label text rendering has been greatly improved.



Isosurfaces are now generated with multithreaded processing.

Multiple Pages

Page layouts can now contain multiple pages. The different pages in a layout are shown in a new page sorter that appears on the left side of the layout window. Pages can be added and removed using the LayoutPageAction operation, or the controls at the bottom of the page sorter. You can also reorder the pages in a layout by dragging and dropping them in the page sorter. 

You can export the pages in a layout to a single PDF document using the SavePict operation with the /PGR flag.


Layout Slide Show Mode

Page layouts can now be displayed in a full screen slide show using the LayoutSlideShow operation. This feature is intended for the convenient full-screen presentation of Igor graphics and results, or can be used to run Igor in a standalone kiosk mode. Various settings can be adjusted using the LayoutSlideShow operation or the Layout Slide Show dialog. The optional "Presenter's view" is shown here.