Skip to content

Latest commit

 

History

History
68 lines (53 loc) · 3.7 KB

README.md

File metadata and controls

68 lines (53 loc) · 3.7 KB

Ruff DOI

Parse and normalize electron microscopy data

Installation

It is recommended to use python 3.11 with a dedicated virtual environment for this package. Learn how to manage python versions and virtual environments.

This package is a reader plugin for pynxtools and thus should be installed together with pynxtools:

pip install pynxtools[em]

for the latest release version from pypi.

If you are interested in the newest version, we recommend to work with a development installation instead.

Purpose

This reader plugin for pynxtools is used to translate diverse file formats from the scientific community and technology partners within the field of electron microscopy into a standardized representation using the NeXus application definition NXem.

Supported file formats

This plugin supports several file formats that are currently used within the research field of electron microscopy. A detailed summary is available in the reference section of the documentation.

Getting started

A getting started tutorial is offered that guides you on how to use the em reader for converting your data to NeXus from a Jupyter notebook or command line calls. Note that not every combination of input from a supported file format and other input, such as from an electronic lab notebook, allows filling all required and recommended fields including their attributes of the NXem application definition. Therefore, you may need to provide an ELN file that contains the missing values in order for the validation step of the EM reader to pass.

Contributing

We are continously working on improving the collection of parsers and their functionalities. If you would like to implement a parser for your data, feel free to get in contact.

Development install

Install the package with its dependencies:

git clone https://github.com/FAIRmat-NFDI/pynxtools-em.git --branch main --recursive pynxtools_em
cd pynxtools_em
python -m pip install --upgrade pip
python -m pip install -e ".[dev,docs]"
pre-commit install

The last line installs a pre-commit hook which automatically formats (linting) and type checks the code before committing.

Test this software

Especially relevant for developers, there exists a basic test framework written in pytest which can be used as follows:

python -m pytest -sv tests

Contact person in FAIRmat for this reader

Markus Kühbach