Parsing .mdt experimental files. Basic example.#
Boris Slautin
10/31/2025
[1]:
#install the latest version of SciFiReaders
!pip install scifireaders
Requirement already satisfied: scifireaders in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (0.11.6)
Requirement already satisfied: cytoolz in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (0.12.1)
Requirement already satisfied: numba>=0.59.0rc1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (0.60.0)
Requirement already satisfied: dask>=2.20.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (2023.3.2)
Requirement already satisfied: setuptools in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (65.6.3)
Requirement already satisfied: ipython>=7.1.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (8.15.0)
Requirement already satisfied: gdown in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (5.2.0)
Requirement already satisfied: toolz in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (0.12.0)
Requirement already satisfied: mrcfile in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (1.5.4)
Requirement already satisfied: sidpy>=0.11.2 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (0.12.6)
Requirement already satisfied: pyUSID in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (0.0.10.post2)
Requirement already satisfied: numpy in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scifireaders) (1.26.4)
Requirement already satisfied: partd>=1.2.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (1.3.0)
Requirement already satisfied: fsspec>=0.6.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (2023.3.0)
Requirement already satisfied: pyyaml>=5.3.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (6.0)
Requirement already satisfied: click>=7.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (8.1.3)
Requirement already satisfied: importlib-metadata>=4.13.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (6.1.0)
Requirement already satisfied: cloudpickle>=1.1.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (2.2.1)
Requirement already satisfied: packaging>=20.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from dask>=2.20.0->scifireaders) (25.0)
Requirement already satisfied: pickleshare in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.7.5)
Requirement already satisfied: decorator in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (5.1.1)
Requirement already satisfied: pexpect>4.3 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (4.8.0)
Requirement already satisfied: stack-data in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.2.0)
Requirement already satisfied: jedi>=0.16 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.18.1)
Requirement already satisfied: matplotlib-inline in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.1.6)
Requirement already satisfied: pygments>=2.4.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (2.17.2)
Requirement already satisfied: backcall in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.2.0)
Requirement already satisfied: traitlets>=5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (5.7.1)
Requirement already satisfied: exceptiongroup in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (1.2.0)
Requirement already satisfied: appnope in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (0.1.2)
Requirement already satisfied: prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipython>=7.1.0->scifireaders) (3.0.36)
Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from numba>=0.59.0rc1->scifireaders) (0.43.0)
Requirement already satisfied: distributed>=2.0.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (2023.3.2)
Requirement already satisfied: psutil in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (5.9.0)
Requirement already satisfied: scipy in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (1.15.3)
Requirement already satisfied: dill in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (0.3.9)
Requirement already satisfied: matplotlib>=2.0.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (3.8.2)
Requirement already satisfied: scikit-learn in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (1.7.0)
Requirement already satisfied: ipykernel in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (6.19.2)
Requirement already satisfied: joblib>=0.11.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (1.2.0)
Requirement already satisfied: h5py>=2.6.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (3.11.0)
Requirement already satisfied: ase in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (3.22.1)
Requirement already satisfied: ipywidgets in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (8.0.4)
Requirement already satisfied: ipympl in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from sidpy>=0.11.2->scifireaders) (0.9.3)
Requirement already satisfied: filelock in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from gdown->scifireaders) (3.12.3)
Requirement already satisfied: tqdm in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from gdown->scifireaders) (4.64.1)
Requirement already satisfied: beautifulsoup4 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from gdown->scifireaders) (4.11.1)
Requirement already satisfied: requests[socks] in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from gdown->scifireaders) (2.28.1)
Requirement already satisfied: six in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from pyUSID->scifireaders) (1.16.0)
Requirement already satisfied: pillow in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from pyUSID->scifireaders) (9.4.0)
Requirement already satisfied: msgpack>=1.0.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (1.0.5)
Requirement already satisfied: jinja2>=2.10.3 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (3.1.2)
Requirement already satisfied: sortedcontainers>=2.0.5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (2.4.0)
Requirement already satisfied: tornado>=6.0.3 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (6.2)
Requirement already satisfied: urllib3>=1.24.3 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (1.26.14)
Requirement already satisfied: tblib>=1.6.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (1.7.0)
Requirement already satisfied: locket>=1.0.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (1.0.0)
Requirement already satisfied: zict>=2.1.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (2.2.0)
Requirement already satisfied: zipp>=0.5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from importlib-metadata>=4.13.0->dask>=2.20.0->scifireaders) (3.15.0)
Requirement already satisfied: parso<0.9.0,>=0.8.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from jedi>=0.16->ipython>=7.1.0->scifireaders) (0.8.3)
Requirement already satisfied: contourpy>=1.0.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (1.0.5)
Requirement already satisfied: python-dateutil>=2.7 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (2.8.2)
Requirement already satisfied: cycler>=0.10 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (0.11.0)
Requirement already satisfied: kiwisolver>=1.3.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (1.4.4)
Requirement already satisfied: fonttools>=4.22.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (4.25.0)
Requirement already satisfied: pyparsing>=2.3.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from matplotlib>=2.0.0->sidpy>=0.11.2->scifireaders) (3.0.9)
Requirement already satisfied: ptyprocess>=0.5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from pexpect>4.3->ipython>=7.1.0->scifireaders) (0.7.0)
Requirement already satisfied: wcwidth in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30->ipython>=7.1.0->scifireaders) (0.2.5)
Requirement already satisfied: soupsieve>1.2 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from beautifulsoup4->gdown->scifireaders) (2.3.2.post1)
Requirement already satisfied: typing-extensions>=4.7.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from filelock->gdown->scifireaders) (4.14.0)
Requirement already satisfied: nest-asyncio in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipykernel->sidpy>=0.11.2->scifireaders) (1.5.6)
Requirement already satisfied: pyzmq>=17 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipykernel->sidpy>=0.11.2->scifireaders) (23.2.0)
Requirement already satisfied: jupyter-client>=6.1.12 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipykernel->sidpy>=0.11.2->scifireaders) (7.4.9)
Requirement already satisfied: debugpy>=1.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipykernel->sidpy>=0.11.2->scifireaders) (1.5.1)
Requirement already satisfied: comm>=0.1.1 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipykernel->sidpy>=0.11.2->scifireaders) (0.1.2)
Requirement already satisfied: ipython-genutils in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipympl->sidpy>=0.11.2->scifireaders) (0.2.0)
Requirement already satisfied: widgetsnbextension~=4.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipywidgets->sidpy>=0.11.2->scifireaders) (4.0.5)
Requirement already satisfied: jupyterlab-widgets~=3.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from ipywidgets->sidpy>=0.11.2->scifireaders) (3.0.5)
Requirement already satisfied: certifi>=2017.4.17 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from requests[socks]->gdown->scifireaders) (2024.2.2)
Requirement already satisfied: charset-normalizer<3,>=2 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from requests[socks]->gdown->scifireaders) (2.0.4)
Requirement already satisfied: idna<4,>=2.5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from requests[socks]->gdown->scifireaders) (3.4)
Requirement already satisfied: PySocks!=1.5.7,>=1.5.6 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from requests[socks]->gdown->scifireaders) (1.7.1)
Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from scikit-learn->sidpy>=0.11.2->scifireaders) (3.1.0)
Requirement already satisfied: pure-eval in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from stack-data->ipython>=7.1.0->scifireaders) (0.2.2)
Requirement already satisfied: asttokens in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from stack-data->ipython>=7.1.0->scifireaders) (2.0.5)
Requirement already satisfied: executing in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from stack-data->ipython>=7.1.0->scifireaders) (0.8.3)
Requirement already satisfied: MarkupSafe>=2.0 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from jinja2>=2.10.3->distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (2.1.2)
Requirement already satisfied: jupyter-core>=4.9.2 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from jupyter-client>=6.1.12->ipykernel->sidpy>=0.11.2->scifireaders) (5.2.0)
Requirement already satisfied: entrypoints in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from jupyter-client>=6.1.12->ipykernel->sidpy>=0.11.2->scifireaders) (0.4)
Requirement already satisfied: heapdict in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from zict>=2.1.0->distributed>=2.0.0->sidpy>=0.11.2->scifireaders) (1.0.1)
Requirement already satisfied: platformdirs>=2.5 in /Users/borisslautin/miniconda3/lib/python3.10/site-packages (from jupyter-core>=4.9.2->jupyter-client>=6.1.12->ipykernel->sidpy>=0.11.2->scifireaders) (2.5.2)
restart session to enable interactive plots
[1]:
#import libs
from SciFiReaders import MDTReader
%matplotlib widget
[2]:
#upload test file
!wget https://raw.githubusercontent.com/pycroscopy/SciFiDatasets/f7ab03ccc2b8c0253e98385ce31f4bf4eeeb053b/data/microscopy/spm/afm/test_mdt.mdt
--2025-11-26 02:01:57-- https://raw.githubusercontent.com/pycroscopy/SciFiDatasets/f7ab03ccc2b8c0253e98385ce31f4bf4eeeb053b/data/microscopy/spm/afm/test_mdt.mdt
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 2606:50c0:8000::154, 2606:50c0:8001::154, 2606:50c0:8002::154, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|2606:50c0:8000::154|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2041504 (1,9M) [application/octet-stream]
Saving to: ‘test_mdt.mdt.2’
test_mdt.mdt.2 100%[===================>] 1,95M 11,8MB/s in 0,2s
2025-11-26 02:01:58 (11,8 MB/s) - ‘test_mdt.mdt.2’ saved [2041504/2041504]
[3]:
#initialize reader
reader = MDTReader("test_mdt.mdt")
[4]:
#read file
reader.read()
[4]:
{'000_Unknown': None,
'001_1F:Iprobe': sidpy.Dataset of type IMAGE with:
dask.array<array, shape=(256, 256), dtype=float64, chunksize=(256, 256), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: x (um) of size (256,)
y: y (um) of size (256,)
with metadata: ['date', 'version', 'uuid'],
'002_Point_Cloud': {'point_0': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_1': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_2': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_3': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_4': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_5': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_6': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_7': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_8': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_9': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_10': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_11': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_12': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_13': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_14': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_15': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_16': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_17': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_18': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_19': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_20': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_21': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_22': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_23': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'],
'point_24': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid']}}
Overview#
MDT binary files have a complex internal structure, combining multiple types of experimental data, such as images, spectra, and point clouds (sparse arrays), all stored within a single file.
Some auxilary types of data such as text are not currently supported.
To handle this diversity efficiently, we have restructured the MDTReader to provide a clear and consistent output format.
The reader returns a Python dictionary, where each key represents a single measurement from the file.
Key Naming Convention#
Each dictionary key follows this pattern:
00N_Name
N— the sequential number of the measurement (e.g., 001, 002, …).Name— the original measurement name from the MDT file (e.g. Height, 1F:IProbe, etc.).
Some data types in MDT files do not have explicit names. For these, we use standardized labels:
Spectral data:
00N_SpectrumPoint cloud data:
00N_Point_Cloud
Output structure#
The reader returns a Python dictionary, where each key represents a single measurement from the file.
Each entry is represented by a sidpy.Dataset, which includes both the data and its assiciated metadata.
For Point Cloud measurements, the reader produces a nested dictionary instead of a single dataset. In this case, each individual spectrum is stored under a key of the form: point_N
More about sidpy format and pycroscopy: link
Image#
[5]:
#@title scan
data = reader.read()
scan = data['001_1F:Iprobe']
print(scan)
sidpy.Dataset of type IMAGE with:
dask.array<array, shape=(256, 256), dtype=float64, chunksize=(256, 256), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: x (um) of size (256,)
y: y (um) of size (256,)
with metadata: ['date', 'version', 'uuid']
[6]:
#metadata
scan.original_metadata
[6]:
{'TextComment': {},
'Parameters': {'Measurement': {'Scanning': {'Location': {'Location': '0'},
'Angle': {'Angle': '0'}}},
'Scan': {'SignalCID': {'SignalCID': '268435463'},
'ReadyPointsX': {'ReadyPointsX': '256'},
'ReadyPointsY': {'ReadyPointsY': '256'},
'ReadyPointsZ': {'ReadyPointsZ': '1'},
'XYZConseq': {'XYZConseq': '0'},
'IsScanFrame1D': {'IsScanFrame1D': 'false'},
'StartTime': {'StartTime': '16:55:45'},
'ExecTime': {'ExecTime': '0:08:37'},
'ScanDrive': {'ScanDrive': 'Tube Scanner'},
'ScanMode': {'ScanMode': 'Spreading Resistance'}},
'Common': {'BuildID': {'BuildID': 'Nova_Px 3.4.0.17277'},
'Date': {'Date': '26.12.2022'},
'Technic': {'Technic': 'Contact'},
'Probe': {'Material': {'Material': 'Si'},
'Coating': {'Coating': 'Unknown'},
'Shape': {'Shape': 'Rectangular'},
'FreqMin': {'FreqMin': '50'},
'FreqMax': {'FreqMax': '100'},
'ID': {'ID': 'FMG01'},
'Length': {'Length': '225'},
'Width': {'Width': '32'},
'Thickness': {'Thickness': '2.5'},
'TipRadius': {'TipRadius': '10'},
'TipAngle': {'TipAngle': '22'},
'QualityFactor': {'QualityFactor': '238.01'},
'ThermoAmp': {'ThermoAmp': '1'},
'ResFreq': {'ResFreq': '55.35'},
'LiqQualityFactor': {'LiqQualityFactor': '10'},
'LiqResFreq': {'LiqResFreq': '20'},
'Stiffness': {'Stiffness': '2.043'},
'InvOptSens': {'InvOptSens': '9'},
'HeadName': {'HeadName': 'SF005&AU007NTF'}},
'Humidity': {'Humidity': '4.56'},
'Temperature': {'Temperature': '25.21'}},
'DeviceType': {'DeviceType': 'NtegraEx'},
'Motors': {'SampleX': {'SampleX': '282.60024'},
'SampleY': {'SampleY': '128916.0224'},
'Appr1': {'Appr1': '0'},
'Appr2': {'Appr2': '-315.95992'}},
'ScanShell': {'scshRateUnits': {'scshRateUnits': 'um/sec'},
'scshRate': {'scshRate': '2.99976563189274'},
'scshXParam': {'scshXParam': 'PosX'},
'scshYParam': {'scshYParam': 'PosY'},
'scshZParam': {'scshZParam': 'PosZ'},
'scshSpecParam': {'scshSpecParam': 'XValue'},
'scshXCentre': {'scshXCentre': '54.0978347853011'},
'scshYCentre': {'scshYCentre': '62.5396504286851'},
'scshZFrom': {'scshZFrom': '0'},
'scshSpecFrom': {'scshSpecFrom': '0'},
'scshAngle': {'scshAngle': '0'},
'scshXSize': {'scshXSize': '3.00083354418604'},
'scshYSize': {'scshYSize': '3.00083354418604'},
'scshZSize': {'scshZSize': '2.29372'},
'scshSpecSize': {'scshSpecSize': '32767.5'},
'scshXPoints': {'scshXPoints': '256'},
'scshYPoints': {'scshYPoints': '256'},
'scshZPoints': {'scshZPoints': '2'},
'scshSpecPoints': {'scshSpecPoints': '1'},
'scshDirXY': {'scshDirXY': 'HLT'},
'scshFastOverPoints': {'scshFastOverPoints': '5'},
'scshXDir': {'scshXDir': 'X +'},
'scshYDir': {'scshYDir': 'Y -'},
'scshZDir': {'scshZDir': 'Z +'},
'scshSpecDir': {'scshSpecDir': 'Pos'},
'scshXYZConseq': {'scshXYZConseq': 'XY+Z'},
'scshCyclicSave': {'scshCyclicSave': 'Off'},
'scshNLCorr': {'scshNLCorr': 'Off'},
'scshScanCount': {'scshScanCount': '1'},
'scshVertexDelay': {'scshVertexDelay': '0'},
'scshOperation': {'scshOperation': 'Normal'},
'scshPointMeasMode': {'scshPointMeasMode': 'Dynamic'}},
'ScanMode': {'ParamCount': {'ParamCount': '58'},
'par40_scanDZ': {'par40_scanDZ': '0'},
'par41_scanDU': {'par41_scanDU': '0'},
'par42_scanDZRate': {'par42_scanDZRate': '100'},
'par37_scanPassProfile': {'par37_scanPassProfile': 'One Pass'},
'par38_scanMoveType': {'par38_scanMoveType': 'Line'},
'par43_scanPassLines': {'par43_scanPassLines': '1'},
'par44_scanFFType': {'par44_scanFFType': 'Off'},
'par45_scanFFScaleFB': {'par45_scanFFScaleFB': '0'},
'par46_scanFFScalePar': {'par46_scanFFScalePar': '0'},
'par47_scanFFParam': {'par47_scanFFParam': 'ZOffset'},
'par31_scanSignal1': {'par31_scanSignal1': 'Height'},
'par287_scanSignal2': {'par287_scanSignal2': 'Iprobe'},
'par543_scanSignal3': {'par543_scanSignal3': 'Iprobe'},
'par799_scanSignal4': {'par799_scanSignal4': '---'},
'par1055_scanSignal5': {'par1055_scanSignal5': '---'},
'par1311_scanSignal6': {'par1311_scanSignal6': '---'},
'par1567_scanSignal7': {'par1567_scanSignal7': '---'},
'par1823_scanSignal8': {'par1823_scanSignal8': '---'},
'par32_scanSignalDir1': {'par32_scanSignalDir1': 'Forward'},
'par288_scanSignalDir2': {'par288_scanSignalDir2': 'Forward'},
'par544_scanSignalDir3': {'par544_scanSignalDir3': 'Backward'},
'par800_scanSignalDir4': {'par800_scanSignalDir4': 'Forward'},
'par1056_scanSignalDir5': {'par1056_scanSignalDir5': 'Forward'},
'par1312_scanSignalDir6': {'par1312_scanSignalDir6': 'Forward'},
'par1568_scanSignalDir7': {'par1568_scanSignalDir7': 'Forward'},
'par1824_scanSignalDir8': {'par1824_scanSignalDir8': 'Forward'},
'par33_scanSignalAver1': {'par33_scanSignalAver1': '1'},
'par289_scanSignalAver2': {'par289_scanSignalAver2': '1'},
'par545_scanSignalAver3': {'par545_scanSignalAver3': '1'},
'par801_scanSignalAver4': {'par801_scanSignalAver4': '1'},
'par1057_scanSignalAver5': {'par1057_scanSignalAver5': '1'},
'par1313_scanSignalAver6': {'par1313_scanSignalAver6': '1'},
'par1569_scanSignalAver7': {'par1569_scanSignalAver7': '1'},
'par1825_scanSignalAver8': {'par1825_scanSignalAver8': '1'},
'par34_scanSignalPass1': {'par34_scanSignalPass1': 'I'},
'par290_scanSignalPass2': {'par290_scanSignalPass2': 'I'},
'par546_scanSignalPass3': {'par546_scanSignalPass3': 'I'},
'par802_scanSignalPass4': {'par802_scanSignalPass4': 'I'},
'par1058_scanSignalPass5': {'par1058_scanSignalPass5': 'I'},
'par1314_scanSignalPass6': {'par1314_scanSignalPass6': 'I'},
'par1570_scanSignalPass7': {'par1570_scanSignalPass7': 'I'},
'par1826_scanSignalPass8': {'par1826_scanSignalPass8': 'I'},
'par35_scanSignalDim1': {'par35_scanSignalDim1': '2D'},
'par291_scanSignalDim2': {'par291_scanSignalDim2': '2D'},
'par547_scanSignalDim3': {'par547_scanSignalDim3': '2D'},
'par803_scanSignalDim4': {'par803_scanSignalDim4': '2D'},
'par1059_scanSignalDim5': {'par1059_scanSignalDim5': '2D'},
'par1315_scanSignalDim6': {'par1315_scanSignalDim6': '2D'},
'par1571_scanSignalDim7': {'par1571_scanSignalDim7': '2D'},
'par1827_scanSignalDim8': {'par1827_scanSignalDim8': '2D'},
'par36_scanSignalHide1': {'par36_scanSignalHide1': 'Off'},
'par292_scanSignalHide2': {'par292_scanSignalHide2': 'Off'},
'par548_scanSignalHide3': {'par548_scanSignalHide3': 'Off'},
'par804_scanSignalHide4': {'par804_scanSignalHide4': 'Off'},
'par1060_scanSignalHide5': {'par1060_scanSignalHide5': 'Off'},
'par1316_scanSignalHide6': {'par1316_scanSignalHide6': 'Off'},
'par1572_scanSignalHide7': {'par1572_scanSignalHide7': 'Off'},
'par1828_scanSignalHide8': {'par1828_scanSignalHide8': 'Off'}},
'Scheme': {'par0_pi_hvValueX': {'par0_pi_hvValueX': '26833'},
'par1_pi_hvScaleX': {'par1_pi_hvScaleX': '0.1'},
'par2_pi_hvOffsetX': {'par2_pi_hvOffsetX': '39322'},
'par4_pi_hvValueY': {'par4_pi_hvValueY': '21408'},
'par5_pi_hvScaleY': {'par5_pi_hvScaleY': '0.1'},
'par6_pi_hvOffsetY': {'par6_pi_hvOffsetY': '39322'},
'par8_pi_hvValueZ': {'par8_pi_hvValueZ': '24048'},
'par9_pi_hvScaleZ': {'par9_pi_hvScaleZ': '0.1'},
'par10_pi_hvOffsetZ': {'par10_pi_hvOffsetZ': '49155'},
'par27_pi_Laser': {'par27_pi_Laser': 'On'},
'par30_pi_MotorSin': {'par30_pi_MotorSin': '0.00016073'},
'par31_pi_MotorCos': {'par31_pi_MotorCos': '0.00016073'},
'par36_pi_IsoDac1': {'par36_pi_IsoDac1': '0'},
'par37_pi_IsoDac2': {'par37_pi_IsoDac2': '0'},
'par38_pi_StrOut1': {'par38_pi_StrOut1': '0'},
'par39_pi_StrOut2': {'par39_pi_StrOut2': '0'},
'par58_pi_Gen1SelfFreq': {'par58_pi_Gen1SelfFreq': 'Off'},
'par59_pi_RelayZ': {'par59_pi_RelayZ': 'Off'},
'par60_pi_RelayXY': {'par60_pi_RelayXY': 'Off'},
'par61_pi_RelayIpr': {'par61_pi_RelayIpr': 'On'},
'par62_pi_RelayAppr': {'par62_pi_RelayAppr': 'Off'},
'par65_pi_fltDFL': {'par65_pi_fltDFL': '1000'},
'par66_pi_fltLF': {'par66_pi_fltLF': '1000'},
'par67_pi_fltMSin': {'par67_pi_fltMSin': '2000'},
'par68_pi_fltMCos': {'par68_pi_fltMCos': '2000'},
'par69_pi_fltBV': {'par69_pi_fltBV': '2000'},
'par70_pi_fltIprobe': {'par70_pi_fltIprobe': '6944.5'},
'par71_pi_fltGND': {'par71_pi_fltGND': '0'},
'par72_pi_fltLaser': {'par72_pi_fltLaser': '1736'},
'par73_pi_fltExt1': {'par73_pi_fltExt1': '1000'},
'par74_pi_fltExt2': {'par74_pi_fltExt2': '1000'},
'par75_pi_fltExt3': {'par75_pi_fltExt3': '200'},
'par76_pi_fltHvX': {'par76_pi_fltHvX': '1736'},
'par77_pi_fltHvY': {'par77_pi_fltHvY': '1736'},
'par78_pi_fltHvZ': {'par78_pi_fltHvZ': '1736'},
'par82_pi_fltSensX': {'par82_pi_fltSensX': '1736'},
'par83_pi_fltSensY': {'par83_pi_fltSensY': '1736'},
'par84_pi_fltSensZ': {'par84_pi_fltSensZ': '2000'},
'par88_pi_fltMSin1': {'par88_pi_fltMSin1': '2000'},
'par89_pi_fltMCos1': {'par89_pi_fltMCos1': '2000'},
'par90_pi_fltIso': {'par90_pi_fltIso': '1736'},
'par97_pi_FreqX': {'par97_pi_FreqX': '0'},
'par98_pi_AmpX': {'par98_pi_AmpX': '0'},
'par99_pi_PhaseX': {'par99_pi_PhaseX': '0'},
'par100_pi_FreqY': {'par100_pi_FreqY': '0'},
'par101_pi_AmpY': {'par101_pi_AmpY': '0'},
'par102_pi_PhaseY': {'par102_pi_PhaseY': '0'},
'par103_pi_FreqZ': {'par103_pi_FreqZ': '0'},
'par104_pi_AmpZ': {'par104_pi_AmpZ': '0'},
'par105_pi_PhaseZ': {'par105_pi_PhaseZ': '0'},
'par121_pi_fbEnabledX': {'par121_pi_fbEnabledX': 'On'},
'par122_pi_fbSignalX': {'par122_pi_fbSignalX': 'SensX'},
'par123_pi_fbSetPointX': {'par123_pi_fbSetPointX': '1.091393208735'},
'par124_pi_fbPScaleX': {'par124_pi_fbPScaleX': '0'},
'par125_pi_fbDScaleX': {'par125_pi_fbDScaleX': '0'},
'par126_pi_fbIScaleX': {'par126_pi_fbIScaleX': '0.97'},
'par127_pi_fbEnabledY': {'par127_pi_fbEnabledY': 'On'},
'par128_pi_fbSignalY': {'par128_pi_fbSignalY': 'SensY'},
'par129_pi_fbSetPointY': {'par129_pi_fbSetPointY': '0.094528918953'},
'par130_pi_fbPScaleY': {'par130_pi_fbPScaleY': '0'},
'par131_pi_fbDScaleY': {'par131_pi_fbDScaleY': '0'},
'par132_pi_fbIScaleY': {'par132_pi_fbIScaleY': '1'},
'par175_pi_snsBandX': {'par175_pi_snsBandX': '4500'},
'par176_pi_snsBiasX': {'par176_pi_snsBiasX': '47479'},
'par177_pi_snsPhaseX': {'par177_pi_snsPhaseX': '0'},
'par178_pi_snsScaleX': {'par178_pi_snsScaleX': '15423'},
'par179_pi_snsFreqX': {'par179_pi_snsFreqX': '360'},
'par181_pi_snsAdcBiasX': {'par181_pi_snsAdcBiasX': '0'},
'par182_pi_snsBandY': {'par182_pi_snsBandY': '1283'},
'par183_pi_snsBiasY': {'par183_pi_snsBiasY': '42947'},
'par184_pi_snsPhaseY': {'par184_pi_snsPhaseY': '0'},
'par185_pi_snsScaleY': {'par185_pi_snsScaleY': '14036'},
'par186_pi_snsFreqY': {'par186_pi_snsFreqY': '250'},
'par188_pi_snsAdcBiasY': {'par188_pi_snsAdcBiasY': '0'},
'par189_pi_snsBandZ': {'par189_pi_snsBandZ': '4000'},
'par190_pi_snsBiasZ': {'par190_pi_snsBiasZ': '55123'},
'par191_pi_snsPhaseZ': {'par191_pi_snsPhaseZ': '0'},
'par192_pi_snsScaleZ': {'par192_pi_snsScaleZ': '7546'},
'par193_pi_snsFreqZ': {'par193_pi_snsFreqZ': '180'},
'par195_pi_snsAdcBiasZ': {'par195_pi_snsAdcBiasZ': '0'},
'par217_pi_scrZSaveDelta': {'par217_pi_scrZSaveDelta': '0.01'},
'par218_pi_scrZCLState': {'par218_pi_scrZCLState': 'Off'},
'par219_pi_scrXYCLState': {'par219_pi_scrXYCLState': 'On'},
'par223_pi_scrPosX': {'par223_pi_scrPosX': '54.0978347853011'},
'par224_pi_scrPosY': {'par224_pi_scrPosY': '62.5396504286851'},
'par225_pi_scrPosZ': {'par225_pi_scrPosZ': '6.21977456348055'},
'par226_pi_Height': {'par226_pi_Height': '6.0849315'},
'par246_pi_IndentFrD': {'par246_pi_IndentFrD': '7000'},
'par247_pi_IndentQ': {'par247_pi_IndentQ': '10.565'},
'par248_pi_IndentFreq': {'par248_pi_IndentFreq': '7000'},
'par249_pi_IndentAmp': {'par249_pi_IndentAmp': '5'},
'par250_pi_IndentCorr': {'par250_pi_IndentCorr': '0'},
'par251_pi_IndentShift': {'par251_pi_IndentShift': '0'},
'par252_pi_IndentCur': {'par252_pi_IndentCur': '0'},
'par257_pi_Lock3Input': {'par257_pi_Lock3Input': 'DFL'},
'par258_pi_Lock3Gain': {'par258_pi_Lock3Gain': '1'},
'par288_pi_LPF1Inp': {'par288_pi_LPF1Inp': 'Cos1'},
'par289_pi_LPF2Inp': {'par289_pi_LPF2Inp': 'Sin1'},
'par290_pi_LPF3Inp': {'par290_pi_LPF3Inp': 'Iprobe'},
'par291_pi_LPF4Inp': {'par291_pi_LPF4Inp': 'Iprobe'},
'par296_pi_LPF1Freq': {'par296_pi_LPF1Freq': '3000'},
'par297_pi_LPF2Freq': {'par297_pi_LPF2Freq': '3000'},
'par298_pi_LPF3Freq': {'par298_pi_LPF3Freq': '0'},
'par299_pi_LPF4Freq': {'par299_pi_LPF4Freq': '0'},
'par300_pi_Lock3Freq': {'par300_pi_Lock3Freq': '0.992063492063492'},
'par301_pi_Lock4Input': {'par301_pi_Lock4Input': 'DFL'},
'par302_pi_Lock4Gain': {'par302_pi_Lock4Gain': '1'},
'par303_pi_Lock4Freq': {'par303_pi_Lock4Freq': '1.98412698412698'},
'par304_pi_BVFreq': {'par304_pi_BVFreq': '0.992063492063492'},
'par305_pi_BVAmp': {'par305_pi_BVAmp': '1'},
'par306_pi_BVPhase': {'par306_pi_BVPhase': '0'},
'par307_pi_Lock4Harm': {'par307_pi_Lock4Harm': '2'},
'par308_pi_BVGenOn': {'par308_pi_BVGenOn': 'GND'},
'par309_pi_srcIProbe': {'par309_pi_srcIProbe': 'Iprobe'},
'par310_pi_srcDFL': {'par310_pi_srcDFL': 'DFL'},
'par311_pi_srcLF': {'par311_pi_srcLF': 'LF'},
'par312_pi_srcCos1': {'par312_pi_srcCos1': 'Cos1'},
'par313_pi_srcSin1': {'par313_pi_srcSin1': 'Sin1'},
'par314_pi_srcCos2': {'par314_pi_srcCos2': 'Cos2'},
'par315_pi_srcSin2': {'par315_pi_srcSin2': 'Sin2'},
'par316_pi_fltMSin3': {'par316_pi_fltMSin3': '1700'},
'par317_pi_fltMCos3': {'par317_pi_fltMCos3': '1700'},
'par318_pi_fltMSin4': {'par318_pi_fltMSin4': '100'},
'par319_pi_fltMCos4': {'par319_pi_fltMCos4': '100'},
'par320_pi_fltMSin5': {'par320_pi_fltMSin5': '100'},
'par321_pi_fltMCos5': {'par321_pi_fltMCos5': '100'},
'par322_pi_Lock5Input': {'par322_pi_Lock5Input': 'DFL'},
'par323_pi_Lock5Gain': {'par323_pi_Lock5Gain': '1'},
'par324_pi_Lock5Freq': {'par324_pi_Lock5Freq': '2.97619047619048'},
'par325_pi_Lock5Harm': {'par325_pi_Lock5Harm': '3'},
'par419_pi_Lock6Gain': {'par419_pi_Lock6Gain': '0'}},
'SchemeSW0': {'par12_pi_hvValueBV': {'par12_pi_hvValueBV': '2.0000708'},
'par13_pi_hvScaleBV': {'par13_pi_hvScaleBV': '1'},
'par14_pi_hvOffsetBV': {'par14_pi_hvOffsetBV': '0'},
'par28_pi_SampleIn': {'par28_pi_SampleIn': 'BV'},
'par29_pi_ProbeIn': {'par29_pi_ProbeIn': 'GND'},
'par40_pi_NFAdcGain': {'par40_pi_NFAdcGain': 'x1'},
'par41_pi_NFAdcBias': {'par41_pi_NFAdcBias': '-0.00014446'},
'par42_pi_LFAdcGain': {'par42_pi_LFAdcGain': 'x1'},
'par43_pi_LFAdcBias': {'par43_pi_LFAdcBias': '-0.00014446'},
'par44_pi_LFAdcOn': {'par44_pi_LFAdcOn': 'Off'},
'par45_pi_LockInput': {'par45_pi_LockInput': 'GND'},
'par46_pi_LockGain': {'par46_pi_LockGain': '10'},
'par47_pi_LockInput1': {'par47_pi_LockInput1': 'GND'},
'par48_pi_LockGain1': {'par48_pi_LockGain1': '10'},
'par49_pi_Ext6Inp': {'par49_pi_Ext6Inp': 'GND'},
'par50_pi_CeramInp': {'par50_pi_CeramInp': 'GND'},
'par51_pi_CeramBias': {'par51_pi_CeramBias': '-0.00014446'},
'par52_pi_BVInp': {'par52_pi_BVInp': 'GND'},
'par53_pi_Mod2Input': {'par53_pi_Mod2Input': 'GND'},
'par54_pi_Modx10': {'par54_pi_Modx10': 'Off'},
'par55_pi_Gen1x10': {'par55_pi_Gen1x10': 'Off'},
'par56_pi_Harmonic': {'par56_pi_Harmonic': '1'},
'par57_pi_Harmonic1': {'par57_pi_Harmonic1': '1'},
'par91_pi_NFx10Ena': {'par91_pi_NFx10Ena': 'On'},
'par92_pi_LFx10Ena': {'par92_pi_LFx10Ena': 'On'},
'par93_pi_Ext1x10Ena': {'par93_pi_Ext1x10Ena': 'On'},
'par94_pi_Iprx10Ena': {'par94_pi_Iprx10Ena': 'On'},
'par95_pi_BNCSignal': {'par95_pi_BNCSignal': '10'},
'par96_pi_DacRes': {'par96_pi_DacRes': '5'},
'par115_pi_FreqMod': {'par115_pi_FreqMod': '0'},
'par116_pi_AmpMod': {'par116_pi_AmpMod': '0'},
'par117_pi_PhaseMod': {'par117_pi_PhaseMod': '0'},
'par118_pi_FreqGen1': {'par118_pi_FreqGen1': '0'},
'par119_pi_AmpGen1': {'par119_pi_AmpGen1': '0'},
'par120_pi_PhaseGen1': {'par120_pi_PhaseGen1': '0'},
'par133_pi_fbEnabledZ': {'par133_pi_fbEnabledZ': 'On'},
'par134_pi_fbSignalZ': {'par134_pi_fbSignalZ': 'DFL'},
'par135_pi_fbSetPointZ': {'par135_pi_fbSetPointZ': '0.09994583168'},
'par136_pi_fbPScaleZ': {'par136_pi_fbPScaleZ': '0'},
'par137_pi_fbDScaleZ': {'par137_pi_fbDScaleZ': '0'},
'par138_pi_fbIScaleZ': {'par138_pi_fbIScaleZ': '0.8'},
'par157_pi_fbEnabledU': {'par157_pi_fbEnabledU': 'Off'},
'par158_pi_fbSignalU': {'par158_pi_fbSignalU': 'MCos1'},
'par159_pi_fbSetPointU': {'par159_pi_fbSetPointU': '0'},
'par160_pi_fbPScaleU': {'par160_pi_fbPScaleU': '0'},
'par161_pi_fbDScaleU': {'par161_pi_fbDScaleU': '0'},
'par162_pi_fbIScaleU': {'par162_pi_fbIScaleU': '0.2'},
'par163_pi_fbEnabledF': {'par163_pi_fbEnabledF': 'Off'},
'par164_pi_fbSignalF': {'par164_pi_fbSignalF': 'Phase1'},
'par165_pi_fbSetPointF': {'par165_pi_fbSetPointF': '-5'},
'par166_pi_fbPScaleF': {'par166_pi_fbPScaleF': '0'},
'par167_pi_fbDScaleF': {'par167_pi_fbDScaleF': '0'},
'par168_pi_fbIScaleF': {'par168_pi_fbIScaleF': '5'},
'par169_pi_fbEnabledA': {'par169_pi_fbEnabledA': 'Off'},
'par170_pi_fbSignalA': {'par170_pi_fbSignalA': 'DFL'},
'par171_pi_fbSetPointA': {'par171_pi_fbSetPointA': '0'},
'par172_pi_fbPScaleA': {'par172_pi_fbPScaleA': '0'},
'par173_pi_fbDScaleA': {'par173_pi_fbDScaleA': '0'},
'par174_pi_fbIScaleA': {'par174_pi_fbIScaleA': '1'},
'par180_pi_snsADCGainX': {'par180_pi_snsADCGainX': 'x1'},
'par187_pi_snsADCGainY': {'par187_pi_snsADCGainY': 'x1'},
'par194_pi_snsADCGainZ': {'par194_pi_snsADCGainZ': 'x1'},
'par231_pi_scrZFBInp': {'par231_pi_scrZFBInp': 'DFL'},
'par232_pi_scrZFBSetPoint': {'par232_pi_scrZFBSetPoint': '0.09994583168'},
'par233_pi_scrZFBScaleI': {'par233_pi_scrZFBScaleI': '0.8'},
'par234_pi_scrZFBScaleP': {'par234_pi_scrZFBScaleP': '0'},
'par235_pi_scrZFBScaleD': {'par235_pi_scrZFBScaleD': '0'},
'par236_pi_scrZFBState': {'par236_pi_scrZFBState': 'On'},
'par254_pi_PMT1': {'par254_pi_PMT1': '0'},
'par255_pi_PMT2': {'par255_pi_PMT2': '0'},
'par332_pi_ProbingAmp': {'par332_pi_ProbingAmp': '0'},
'par333_pi_LockPhase1': {'par333_pi_LockPhase1': '128.858863302'},
'par334_pi_LockPhase2': {'par334_pi_LockPhase2': '0'},
'par335_pi_ACInput': {'par335_pi_ACInput': 'Gen1'},
'par356_pi_BVExtAmp': {'par356_pi_BVExtAmp': '0'},
'par415_pi_PMTg': {'par415_pi_PMTg': '1.9999823'}},
'SchemeSW1': {'par12_pi_hvValueBV': {'par12_pi_hvValueBV': '0'},
'par13_pi_hvScaleBV': {'par13_pi_hvScaleBV': '1'},
'par14_pi_hvOffsetBV': {'par14_pi_hvOffsetBV': '0'},
'par28_pi_SampleIn': {'par28_pi_SampleIn': 'GND'},
'par29_pi_ProbeIn': {'par29_pi_ProbeIn': 'GND'},
'par40_pi_NFAdcGain': {'par40_pi_NFAdcGain': 'x1'},
'par41_pi_NFAdcBias': {'par41_pi_NFAdcBias': '-0.00014446'},
'par42_pi_LFAdcGain': {'par42_pi_LFAdcGain': 'x1'},
'par43_pi_LFAdcBias': {'par43_pi_LFAdcBias': '-0.00014446'},
'par44_pi_LFAdcOn': {'par44_pi_LFAdcOn': 'Off'},
'par45_pi_LockInput': {'par45_pi_LockInput': 'GND'},
'par46_pi_LockGain': {'par46_pi_LockGain': '10'},
'par47_pi_LockInput1': {'par47_pi_LockInput1': 'GND'},
'par48_pi_LockGain1': {'par48_pi_LockGain1': '10'},
'par49_pi_Ext6Inp': {'par49_pi_Ext6Inp': 'GND'},
'par50_pi_CeramInp': {'par50_pi_CeramInp': 'GND'},
'par51_pi_CeramBias': {'par51_pi_CeramBias': '-0.00014446'},
'par52_pi_BVInp': {'par52_pi_BVInp': 'GND'},
'par53_pi_Mod2Input': {'par53_pi_Mod2Input': 'GND'},
'par54_pi_Modx10': {'par54_pi_Modx10': 'Off'},
'par55_pi_Gen1x10': {'par55_pi_Gen1x10': 'Off'},
'par56_pi_Harmonic': {'par56_pi_Harmonic': '1'},
'par57_pi_Harmonic1': {'par57_pi_Harmonic1': '1'},
'par91_pi_NFx10Ena': {'par91_pi_NFx10Ena': 'On'},
'par92_pi_LFx10Ena': {'par92_pi_LFx10Ena': 'On'},
'par93_pi_Ext1x10Ena': {'par93_pi_Ext1x10Ena': 'On'},
'par94_pi_Iprx10Ena': {'par94_pi_Iprx10Ena': 'On'},
'par95_pi_BNCSignal': {'par95_pi_BNCSignal': '10'},
'par96_pi_DacRes': {'par96_pi_DacRes': '5'},
'par115_pi_FreqMod': {'par115_pi_FreqMod': '100'},
'par116_pi_AmpMod': {'par116_pi_AmpMod': '0.05'},
'par117_pi_PhaseMod': {'par117_pi_PhaseMod': '0'},
'par118_pi_FreqGen1': {'par118_pi_FreqGen1': '0'},
'par119_pi_AmpGen1': {'par119_pi_AmpGen1': '0'},
'par120_pi_PhaseGen1': {'par120_pi_PhaseGen1': '0'},
'par133_pi_fbEnabledZ': {'par133_pi_fbEnabledZ': 'Off'},
'par134_pi_fbSignalZ': {'par134_pi_fbSignalZ': 'DFL'},
'par135_pi_fbSetPointZ': {'par135_pi_fbSetPointZ': '2'},
'par136_pi_fbPScaleZ': {'par136_pi_fbPScaleZ': '0'},
'par137_pi_fbDScaleZ': {'par137_pi_fbDScaleZ': '0'},
'par138_pi_fbIScaleZ': {'par138_pi_fbIScaleZ': '1'},
'par157_pi_fbEnabledU': {'par157_pi_fbEnabledU': 'Off'},
'par158_pi_fbSignalU': {'par158_pi_fbSignalU': 'MCos1'},
'par159_pi_fbSetPointU': {'par159_pi_fbSetPointU': '0'},
'par160_pi_fbPScaleU': {'par160_pi_fbPScaleU': '0'},
'par161_pi_fbDScaleU': {'par161_pi_fbDScaleU': '0'},
'par162_pi_fbIScaleU': {'par162_pi_fbIScaleU': '0.2'},
'par163_pi_fbEnabledF': {'par163_pi_fbEnabledF': 'Off'},
'par164_pi_fbSignalF': {'par164_pi_fbSignalF': 'Phase1'},
'par165_pi_fbSetPointF': {'par165_pi_fbSetPointF': '-5'},
'par166_pi_fbPScaleF': {'par166_pi_fbPScaleF': '0'},
'par167_pi_fbDScaleF': {'par167_pi_fbDScaleF': '0'},
'par168_pi_fbIScaleF': {'par168_pi_fbIScaleF': '5'},
'par169_pi_fbEnabledA': {'par169_pi_fbEnabledA': 'Off'},
'par170_pi_fbSignalA': {'par170_pi_fbSignalA': 'DFL'},
'par171_pi_fbSetPointA': {'par171_pi_fbSetPointA': '0'},
'par172_pi_fbPScaleA': {'par172_pi_fbPScaleA': '0'},
'par173_pi_fbDScaleA': {'par173_pi_fbDScaleA': '0'},
'par174_pi_fbIScaleA': {'par174_pi_fbIScaleA': '1'},
'par180_pi_snsADCGainX': {'par180_pi_snsADCGainX': 'x1'},
'par187_pi_snsADCGainY': {'par187_pi_snsADCGainY': 'x1'},
'par194_pi_snsADCGainZ': {'par194_pi_snsADCGainZ': 'x1'},
'par231_pi_scrZFBInp': {'par231_pi_scrZFBInp': 'DFL'},
'par232_pi_scrZFBSetPoint': {'par232_pi_scrZFBSetPoint': '2'},
'par233_pi_scrZFBScaleI': {'par233_pi_scrZFBScaleI': '1'},
'par234_pi_scrZFBScaleP': {'par234_pi_scrZFBScaleP': '0'},
'par235_pi_scrZFBScaleD': {'par235_pi_scrZFBScaleD': '0'},
'par236_pi_scrZFBState': {'par236_pi_scrZFBState': 'Off'},
'par254_pi_PMT1': {'par254_pi_PMT1': '0'},
'par255_pi_PMT2': {'par255_pi_PMT2': '0'},
'par332_pi_ProbingAmp': {'par332_pi_ProbingAmp': '0'},
'par333_pi_LockPhase1': {'par333_pi_LockPhase1': '128.858863302'},
'par334_pi_LockPhase2': {'par334_pi_LockPhase2': '0'},
'par335_pi_ACInput': {'par335_pi_ACInput': 'Gen1'},
'par356_pi_BVExtAmp': {'par356_pi_BVExtAmp': '0.05'},
'par415_pi_PMTg': {'par415_pi_PMTg': '2.5'}},
'SchemeSW2': {'par12_pi_hvValueBV': {'par12_pi_hvValueBV': '0'},
'par13_pi_hvScaleBV': {'par13_pi_hvScaleBV': '1'},
'par14_pi_hvOffsetBV': {'par14_pi_hvOffsetBV': '0'},
'par28_pi_SampleIn': {'par28_pi_SampleIn': 'GND'},
'par29_pi_ProbeIn': {'par29_pi_ProbeIn': 'GND'},
'par40_pi_NFAdcGain': {'par40_pi_NFAdcGain': 'x1'},
'par41_pi_NFAdcBias': {'par41_pi_NFAdcBias': '-0.00014446'},
'par42_pi_LFAdcGain': {'par42_pi_LFAdcGain': 'x1'},
'par43_pi_LFAdcBias': {'par43_pi_LFAdcBias': '-0.00014446'},
'par44_pi_LFAdcOn': {'par44_pi_LFAdcOn': 'Off'},
'par45_pi_LockInput': {'par45_pi_LockInput': 'GND'},
'par46_pi_LockGain': {'par46_pi_LockGain': '10'},
'par47_pi_LockInput1': {'par47_pi_LockInput1': 'GND'},
'par48_pi_LockGain1': {'par48_pi_LockGain1': '10'},
'par49_pi_Ext6Inp': {'par49_pi_Ext6Inp': 'GND'},
'par50_pi_CeramInp': {'par50_pi_CeramInp': 'GND'},
'par51_pi_CeramBias': {'par51_pi_CeramBias': '-0.00014446'},
'par52_pi_BVInp': {'par52_pi_BVInp': 'GND'},
'par53_pi_Mod2Input': {'par53_pi_Mod2Input': 'GND'},
'par54_pi_Modx10': {'par54_pi_Modx10': 'Off'},
'par55_pi_Gen1x10': {'par55_pi_Gen1x10': 'Off'},
'par56_pi_Harmonic': {'par56_pi_Harmonic': '1'},
'par57_pi_Harmonic1': {'par57_pi_Harmonic1': '1'},
'par91_pi_NFx10Ena': {'par91_pi_NFx10Ena': 'On'},
'par92_pi_LFx10Ena': {'par92_pi_LFx10Ena': 'On'},
'par93_pi_Ext1x10Ena': {'par93_pi_Ext1x10Ena': 'On'},
'par94_pi_Iprx10Ena': {'par94_pi_Iprx10Ena': 'On'},
'par95_pi_BNCSignal': {'par95_pi_BNCSignal': '10'},
'par96_pi_DacRes': {'par96_pi_DacRes': '5'},
'par115_pi_FreqMod': {'par115_pi_FreqMod': '100'},
'par116_pi_AmpMod': {'par116_pi_AmpMod': '0.05'},
'par117_pi_PhaseMod': {'par117_pi_PhaseMod': '0'},
'par118_pi_FreqGen1': {'par118_pi_FreqGen1': '0'},
'par119_pi_AmpGen1': {'par119_pi_AmpGen1': '0'},
'par120_pi_PhaseGen1': {'par120_pi_PhaseGen1': '0'},
'par133_pi_fbEnabledZ': {'par133_pi_fbEnabledZ': 'Off'},
'par134_pi_fbSignalZ': {'par134_pi_fbSignalZ': 'DFL'},
'par135_pi_fbSetPointZ': {'par135_pi_fbSetPointZ': '2'},
'par136_pi_fbPScaleZ': {'par136_pi_fbPScaleZ': '0'},
'par137_pi_fbDScaleZ': {'par137_pi_fbDScaleZ': '0'},
'par138_pi_fbIScaleZ': {'par138_pi_fbIScaleZ': '1'},
'par157_pi_fbEnabledU': {'par157_pi_fbEnabledU': 'Off'},
'par158_pi_fbSignalU': {'par158_pi_fbSignalU': 'MCos1'},
'par159_pi_fbSetPointU': {'par159_pi_fbSetPointU': '0'},
'par160_pi_fbPScaleU': {'par160_pi_fbPScaleU': '0'},
'par161_pi_fbDScaleU': {'par161_pi_fbDScaleU': '0'},
'par162_pi_fbIScaleU': {'par162_pi_fbIScaleU': '0.2'},
'par163_pi_fbEnabledF': {'par163_pi_fbEnabledF': 'Off'},
'par164_pi_fbSignalF': {'par164_pi_fbSignalF': 'Phase1'},
'par165_pi_fbSetPointF': {'par165_pi_fbSetPointF': '-5'},
'par166_pi_fbPScaleF': {'par166_pi_fbPScaleF': '0'},
'par167_pi_fbDScaleF': {'par167_pi_fbDScaleF': '0'},
'par168_pi_fbIScaleF': {'par168_pi_fbIScaleF': '5'},
'par169_pi_fbEnabledA': {'par169_pi_fbEnabledA': 'Off'},
'par170_pi_fbSignalA': {'par170_pi_fbSignalA': 'DFL'},
'par171_pi_fbSetPointA': {'par171_pi_fbSetPointA': '0'},
'par172_pi_fbPScaleA': {'par172_pi_fbPScaleA': '0'},
'par173_pi_fbDScaleA': {'par173_pi_fbDScaleA': '0'},
'par174_pi_fbIScaleA': {'par174_pi_fbIScaleA': '1'},
'par180_pi_snsADCGainX': {'par180_pi_snsADCGainX': 'x1'},
'par187_pi_snsADCGainY': {'par187_pi_snsADCGainY': 'x1'},
'par194_pi_snsADCGainZ': {'par194_pi_snsADCGainZ': 'x1'},
'par231_pi_scrZFBInp': {'par231_pi_scrZFBInp': 'DFL'},
'par232_pi_scrZFBSetPoint': {'par232_pi_scrZFBSetPoint': '2'},
'par233_pi_scrZFBScaleI': {'par233_pi_scrZFBScaleI': '1'},
'par234_pi_scrZFBScaleP': {'par234_pi_scrZFBScaleP': '0'},
'par235_pi_scrZFBScaleD': {'par235_pi_scrZFBScaleD': '0'},
'par236_pi_scrZFBState': {'par236_pi_scrZFBState': 'Off'},
'par254_pi_PMT1': {'par254_pi_PMT1': '0'},
'par255_pi_PMT2': {'par255_pi_PMT2': '0'},
'par332_pi_ProbingAmp': {'par332_pi_ProbingAmp': '0'},
'par333_pi_LockPhase1': {'par333_pi_LockPhase1': '128.858863302'},
'par334_pi_LockPhase2': {'par334_pi_LockPhase2': '0'},
'par335_pi_ACInput': {'par335_pi_ACInput': 'Gen1'},
'par356_pi_BVExtAmp': {'par356_pi_BVExtAmp': '0.05'},
'par415_pi_PMTg': {'par415_pi_PMTg': '2.5'}},
'Analysis': {'SubInfo': {'MethodID': {'MethodID': '-1'}},
'FiltInfo': {'FilterID': {'FilterID': '-1'}},
'DataGUID': {'DataGUID': '{0A7F8A05-5656-47A8-B03E-11BE16C97F15}'}}}}
[7]:
#visualization
scan.plot(vmax=1, scale_bar=True, cmap='coolwarm');
[8]:
#scan as np.array
scan.compute()
[8]:
array([[ 0.00152589, -0.00877387, -0.02708456, ..., -0.03433254,
-0.0320437 , -0.02899192],
[-0.02517719, 0.00228884, -0.00381473, ..., -0.02708456,
-0.04005463, -0.04081757],
[-0.02975487, -0.02136247, -0.02288836, ..., -0.02174394,
-0.03700285, -0.0320437 ],
...,
[-0.03433254, -0.00991829, -0.0194551 , ..., -0.03280665,
-0.03166223, -0.03433254],
[-0.0194551 , -0.02594014, -0.03356959, ..., -0.03051781,
-0.03852874, -0.03547696],
[-0.01716627, -0.02975487, 0.07515011, ..., -0.03280665,
-0.03433254, -0.02555867]])
[9]:
#@title spectrums and point clouds
data = reader.read()
pc = data['002_Point_Cloud']
print(pc)
{'point_0': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_1': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_2': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_3': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_4': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_5': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_6': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_7': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_8': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_9': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_10': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_11': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_12': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_13': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_14': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_15': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_16': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_17': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_18': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_19': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_20': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_21': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_22': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_23': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid'], 'point_24': sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid']}
The point cloud is initially loaded as a dictionary, where each entry corresponds to a spectrum.
[10]:
print(pc['point_1'])
sidpy.Dataset of type SPECTRUM with:
dask.array<array, shape=(3522, 1), dtype=float64, chunksize=(3522, 1), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
x: BVValue (V) of size (3522,)
channel: generic (generic) of size (1,)
with metadata: ['channels', 'units', 'coordinate', 'date', 'version', 'uuid']
[11]:
#short metadata, icluding point's coordinate
pc['point_1'].metadata
[11]:
{'channels': ['Iprobe'],
'units': ['nA'],
'coordinate': array([53.4435177 , 62.31308374]),
'date': '4/5/2023 11:46:5',
'version': 0.7000000000000001,
'uuid': '35225116-2439-4022-807D-7C6A5C86C632'}
[12]:
pc['point_1'].original_metadata
[12]:
{'TextComment': {},
'Parameters': {'Common': {'BuildID': {'BuildID': 'Nova_Px 3.4.0.17277'},
'Date': {'Date': '26.12.2022'},
'Technic': {'Technic': 'Contact'},
'Probe': {'Material': {'Material': 'Si'},
'Coating': {'Coating': 'Unknown'},
'Shape': {'Shape': 'Rectangular'},
'FreqMin': {'FreqMin': '50'},
'FreqMax': {'FreqMax': '100'},
'ID': {'ID': 'FMG01'},
'Length': {'Length': '225'},
'Width': {'Width': '32'},
'Thickness': {'Thickness': '2.5'},
'TipRadius': {'TipRadius': '10'},
'TipAngle': {'TipAngle': '22'},
'QualityFactor': {'QualityFactor': '238.01'},
'ThermoAmp': {'ThermoAmp': '1'},
'ResFreq': {'ResFreq': '55.35'},
'LiqQualityFactor': {'LiqQualityFactor': '10'},
'LiqResFreq': {'LiqResFreq': '20'},
'Stiffness': {'Stiffness': '2.043'},
'InvOptSens': {'InvOptSens': '9'},
'HeadName': {'HeadName': 'SF005&AU007NTF'}},
'Humidity': {'Humidity': '4.56'},
'Temperature': {'Temperature': '25.21'}},
'DeviceType': {'DeviceType': 'NtegraEx'},
'Motors': {'SampleX': {'SampleX': '282.60024'},
'SampleY': {'SampleY': '128916.0224'},
'Appr1': {'Appr1': '0'},
'Appr2': {'Appr2': '-315.95992'}},
'SpecShell': {'Drive': {'Drive': 'Tube Scanner'},
'Mode': {'Mode': 'I_(BV)'},
'MoveMode': {'MoveMode': 'Lift Z'},
'CustMode': {'CustMode': 'CustomOff'},
'chemeMode': {'chemeMode': 'SchemeNone'},
'Param': {'Param': 'BVValue'},
'AbsMode': {'AbsMode': 'Absolute'},
'BackLimEna': {'BackLimEna': 'On'},
'LimGate': {'LimGate': '0'},
'BackEna': {'BackEna': 'On'},
'FinitEna': {'FinitEna': 'On'},
'CurveCount': {'CurveCount': '3'},
'DelayInit': {'DelayInit': '0'},
'DelayForw': {'DelayForw': '0'},
'DelayBack': {'DelayBack': '0'},
'InitTime': {'InitTime': '100'},
'FinitTime': {'FinitTime': '100'},
'RateUnit': {'RateUnit': 'sec'},
'MeasUnit': {'MeasUnit': 'pnt'},
'SignalCount': {'SignalCount': '1'},
'Signal0': {'SignalName': {'SignalName': 'Iprobe'},
'SignalUnit': {'SignalUnit': 'nA'}},
'sNax-1': {'NaxCount': {'NaxCount': '0'}},
'PointCount': {'PointCount': '25'},
'Point0': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.4435176967192'},
'Y': {'Y': '62.0752357135135'},
'Z': {'Z': '-1'}},
'ParamUnit': {'ParamUnit': 'V'},
'Point1': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.4435176967192'},
'Y': {'Y': '62.313083735656'},
'Z': {'Z': '-1'}},
'Point2': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.4435176967192'},
'Y': {'Y': '62.5509317577986'},
'Z': {'Z': '-1'}},
'Point3': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.4435176967192'},
'Y': {'Y': '62.7887797799412'},
'Z': {'Z': '-1'}},
'Point4': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.4435176967192'},
'Y': {'Y': '63.0266278020837'},
'Z': {'Z': '-1'}},
'Point5': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.6898267156969'},
'Y': {'Y': '62.0752357135135'},
'Z': {'Z': '-1'}},
'Point6': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.6898267156969'},
'Y': {'Y': '62.313083735656'},
'Z': {'Z': '-1'}},
'Point7': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.6898267156969'},
'Y': {'Y': '62.5509317577986'},
'Z': {'Z': '-1'}},
'Point8': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.6898267156969'},
'Y': {'Y': '62.7887797799412'},
'Z': {'Z': '-1'}},
'Point9': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.6898267156969'},
'Y': {'Y': '63.0266278020837'},
'Z': {'Z': '-1'}},
'Point10': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.9361357346745'},
'Y': {'Y': '62.0752357135135'},
'Z': {'Z': '-1'}},
'Point11': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.9361357346745'},
'Y': {'Y': '62.313083735656'},
'Z': {'Z': '-1'}},
'Point12': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.9361357346745'},
'Y': {'Y': '62.5509317577986'},
'Z': {'Z': '-1'}},
'Point13': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.9361357346745'},
'Y': {'Y': '62.7887797799412'},
'Z': {'Z': '-1'}},
'Point14': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '53.9361357346745'},
'Y': {'Y': '63.0266278020837'},
'Z': {'Z': '-1'}},
'Point15': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.1824447536522'},
'Y': {'Y': '62.0752357135135'},
'Z': {'Z': '-1'}},
'Point16': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.1824447536522'},
'Y': {'Y': '62.313083735656'},
'Z': {'Z': '-1'}},
'Point17': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.1824447536522'},
'Y': {'Y': '62.5509317577986'},
'Z': {'Z': '-1'}},
'Point18': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.1824447536522'},
'Y': {'Y': '62.7887797799412'},
'Z': {'Z': '-1'}},
'Point19': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.1824447536522'},
'Y': {'Y': '63.0266278020837'},
'Z': {'Z': '-1'}},
'Point20': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.4287537726299'},
'Y': {'Y': '62.0752357135135'},
'Z': {'Z': '-1'}},
'Point21': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.4287537726299'},
'Y': {'Y': '62.313083735656'},
'Z': {'Z': '-1'}},
'Point22': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.4287537726299'},
'Y': {'Y': '62.5509317577986'},
'Z': {'Z': '-1'}},
'Point23': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.4287537726299'},
'Y': {'Y': '62.7887797799412'},
'Z': {'Z': '-1'}},
'Point24': {'From': {'From': '-2.99985697'},
'To': {'To': '2.99987324'},
'ForwRate': {'ForwRate': '0.3'},
'BackRate': {'BackRate': '0.3'},
'ForwPoints': {'ForwPoints': '600'},
'BackPoints': {'BackPoints': '600'},
'Signal-1': {'Aver': {'Aver': '1'},
'LimEna': {'LimEna': 'Off'},
'MinLim': {'MinLim': '-50'},
'MaxLim': {'MaxLim': '50'}},
'X': {'X': '54.4287537726299'},
'Y': {'Y': '63.0266278020837'},
'Z': {'Z': '-1'}}},
'Name': {'Name': 'I_(BV)'}}}
[13]:
#row spectra in each point
pc['point_1'].plot();
Because the number of points varies slightly between locations, the original spectra cannot be combined into a single sparse array. For this reason, we provide the raw, unprocessed data as a dictionary of spectra. However, applying a minimal interpolation step allows us to convert the measurement into a uniform Point Cloud format.
[14]:
#convert to Point Cloud
pc_conv = reader.to_point_cloud(pc)
print(pc_conv)
sidpy.Dataset of type POINT_CLOUD with:
dask.array<array, shape=(25, 1, 3522), dtype=float64, chunksize=(25, 1, 3522), chunktype=numpy.ndarray>
data contains: Iprobe (nA)
and Dimensions:
point number: Point number (generic) of size (25,)
channel: generic (generic) of size (1,)
x: BVValue (V) of size (3522,)
with metadata: ['channels', 'units', 'date', 'version', 'uuid']
[15]:
#location coordinates are stored in .point_cloud attribute
pc_conv.point_cloud
[15]:
{'coordinates': array([[53.4435177 , 62.07523571],
[53.4435177 , 62.31308374],
[53.4435177 , 62.55093176],
[53.4435177 , 62.78877978],
[53.4435177 , 63.0266278 ],
[53.68982672, 62.07523571],
[53.68982672, 62.31308374],
[53.68982672, 62.55093176],
[53.68982672, 62.78877978],
[53.68982672, 63.0266278 ],
[53.93613573, 62.07523571],
[53.93613573, 62.31308374],
[53.93613573, 62.55093176],
[53.93613573, 62.78877978],
[53.93613573, 63.0266278 ],
[54.18244475, 62.07523571],
[54.18244475, 62.31308374],
[54.18244475, 62.55093176],
[54.18244475, 62.78877978],
[54.18244475, 63.0266278 ],
[54.42875377, 62.07523571],
[54.42875377, 62.31308374],
[54.42875377, 62.55093176],
[54.42875377, 62.78877978],
[54.42875377, 63.0266278 ]])}
[16]:
pc_conv.metadata
[16]:
{'channels': ['Iprobe'],
'units': ['nA'],
'date': '4/5/2023 11:46:5',
'version': 0.7000000000000001,
'uuid': '35225116-2439-4022-807D-7C6A5C86C632'}
[17]:
pc_conv.plot();