Skip to main content

Read a Nanonis spectroscopy .dat file into a xarray Dataset

Project description

Xarray plugin to read Nanonis spectroscopy .dat files

pypi conda-forge pypi downloads license python SPEC 0 — Minimum Supported Dependencies ci pre-commit.ci status codecov ruff

nanonis_xarray is a xarray plugin to read spectroscopy measurements saved in text format (.dat) by a Nanonis Mimea SPM control system from SPECS Surface Nano Analysis GmbH.

The data is read into a xarray.Dataset, where each measured channel (tunnelling current, AFM oscillation amplitude, …) is a xarray.DataArray with up to three dimensions:

  • The independent variable of the measurement, such as bias voltage or tip z position;
  • The sweep number, if the measurement has been repeated multiple times;
  • The sweep direction (forward or backward), if the independent variable has been swept in both directions.
>>> import xarray as xr

>>> data = xr.open_dataset("tests/data/z.dat")
>>> data.coords
Coordinates:
  * z_rel      (z_rel) float64 2kB [m] -2.1e-10 -2.065e-10 ... 4.865e-10 4.9e-10
  * sweep      (sweep) int64 24B 1 2 3
  * direction  (direction) object 16B 'bw' 'fw'

pint-xarray is used to associate a physical unit to each channel, unless xr.open_dataset() is called with quantify_vars=False:

>>> data["current"].pint.units
<Unit('ampere')>

The header of the measurement is stored in the attrs nested dictionary:

>>> data.attrs["Z Spectroscopy"]["Number of sweeps"]
3
>>> data.attrs["Z Spectroscopy"]["backward sweep"]
True

Physical quantities are stored as pint.Quantity, timestamps as datetime.datetime, and paths as pathlib.Path:

>>> data.attrs["NanonisMain"]["RT Frequency"]
<Quantity(10000.0, 'hertz')>
>>> data.attrs["Date"]
datetime.datetime(2015, 3, 27, 11, 49, 5)

🚧 Work in progress 🚧

This library is under development: expect breaking changes. Nanonis binary formats (.sxm, .3ds) are currently not supported, and can be read by similar projects:

How to cite

Cite gsffile in your published work using the metadata in CITATION.cff

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nanonis_xarray-0.1.5.tar.gz (102.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nanonis_xarray-0.1.5-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file nanonis_xarray-0.1.5.tar.gz.

File metadata

  • Download URL: nanonis_xarray-0.1.5.tar.gz
  • Upload date:
  • Size: 102.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nanonis_xarray-0.1.5.tar.gz
Algorithm Hash digest
SHA256 e722de40bde3109c71892c2070c89e6d58829cb4f5c514ff58857f9acf8b61af
MD5 61128e7c622510b88583debeb7cb46f7
BLAKE2b-256 2c91b86d5f99ad6eff17d5eacaec81f0ff60f7589e02be94b47abaf1196bdcb0

See more details on using hashes here.

Provenance

The following attestation bundles were made for nanonis_xarray-0.1.5.tar.gz:

Publisher: ci.yaml on angelo-peronio/nanonis-xarray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nanonis_xarray-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: nanonis_xarray-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nanonis_xarray-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 afd8b79bcab7cabc0142b6d6746f6b5f5bde801b6aa960180c36aa3bca26a33c
MD5 5e92f7d7437ad58b9a059140383dfb3c
BLAKE2b-256 4c6144c3e363c7d5906915157069db41f2a16f2215978c0e4fa3c81be8938828

See more details on using hashes here.

Provenance

The following attestation bundles were made for nanonis_xarray-0.1.5-py3-none-any.whl:

Publisher: ci.yaml on angelo-peronio/nanonis-xarray

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page