HyperSpy: multi-dimensional data analysis toolbox

HyperSpy is an open source Python library which provides tools to facilitate the interactive data analysis of multi-dimensional datasets that can be described as multi-dimensional arrays of a given signal (e.g. a 2D array of spectra a.k.a spectrum image).

HyperSpy aims at making it easy and natural to apply analytical procedures that operate on an individual signal to multi-dimensional arrays, as well as providing easy access to analytical tools that exploit the multi-dimensionality of the dataset.

Its modular structure makes it easy to add features to analyze different kinds of signals.


  • Two families of named and scaled axes: signal and navigation.
  • Visualization tools for multi-dimensional spectra and images.
  • Easy access multi-dimensional curve fitting and blind source separation.
  • Built on top of NumPy, SciPy, matplotlib and scikit-learn.
  • Modular design for easy extensibility.

The development has been motivated by the data analysis needs of the electron microscopy community but it is proving useful in many other fields.


Here is some of what our users say about Hyperspy:

(Click here to add your thank you note)

Hyperspy made it easy to process EELS and EDS data for presentation in my thesis!

—Tom Aarholt, University of Oxford

My answer to any (S)TEM data analyses problem - use HyperSpy

—Vadim Migunov, Ernst Ruska-Centre (ER-C), Research Centre Juelich