Metadata-Version: 2.4
Name: erlab
Version: 3.22.0
Summary: Python package for ARPES data analysis and visualization.
Keywords: Condensed Matter Physics,ARPES
Author: Kimoon Higashihira Han
Author-email: Kimoon Higashihira Han <khan@kaist.ac.kr>
License-Expression: GPL-3.0-or-later
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Visualization
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Requires-Dist: dask[distributed]>=2024.4.1
Requires-Dist: findiff>=0.12.0
Requires-Dist: h5netcdf>=1.7.1
Requires-Dist: igor2>=0.5.13
Requires-Dist: igorwriter>=0.6.1
Requires-Dist: joblib>=1.3.2
Requires-Dist: lazy-loader>=0.4
Requires-Dist: lmfit>=1.3.2
Requires-Dist: ipykernel>=6.29.5,!=7.2.0
Requires-Dist: matplotlib>=3.8.0
Requires-Dist: numba>=0.63.0 ; platform_machine != 'x86_64' or sys_platform != 'darwin'
Requires-Dist: numba>=0.61.0,<0.63.0 ; platform_machine == 'x86_64' and sys_platform == 'darwin'
Requires-Dist: numexpr>=2.11.0
Requires-Dist: numpy>=1.26.0
Requires-Dist: packaging>=24.0
Requires-Dist: pickleshare>=0.7.5
Requires-Dist: pydantic>=2.11.7
Requires-Dist: pyperclip>=1.8.2
Requires-Dist: pyqtgraph>=0.13.1
Requires-Dist: pyzmq>=27.0.2
Requires-Dist: qtawesome>=1.3.1
Requires-Dist: qtconsole>=5.6.0
Requires-Dist: qtpy>=2.4.1
Requires-Dist: scipy>=1.15.0
Requires-Dist: tqdm>=4.66.2
Requires-Dist: varname>=0.13.0
Requires-Dist: xarray>=2024.10.0
Requires-Dist: xarray-lmfit>=0.5.4
Requires-Dist: pygments>=2.11.0
Requires-Dist: xraydb>=4.5.8
Requires-Dist: hdf5plugin>=6.0.0
Requires-Dist: erlab[viz,io,perf,misc] ; extra == 'complete'
Requires-Dist: astropy>=5.1.1 ; extra == 'io'
Requires-Dist: nexusformat>=1.0.6 ; extra == 'io'
Requires-Dist: zarr>=3.1.2 ; extra == 'io'
Requires-Dist: pillow>=10.0.0 ; extra == 'io'
Requires-Dist: iminuit>=2.25.2,!=2.31.2 ; extra == 'misc'
Requires-Dist: csaps>=1.1.0 ; extra == 'misc'
Requires-Dist: numdifftools>=0.9.42 ; extra == 'misc'
Requires-Dist: numbagg>=0.8.1 ; extra == 'perf'
Requires-Dist: hvplot>=0.11.0,!=0.12.0 ; extra == 'viz'
Requires-Dist: ipywidgets ; extra == 'viz'
Requires-Python: >=3.11
Project-URL: Documentation, https://erlabpy.readthedocs.io
Project-URL: Repository, https://github.com/kmnhan/erlabpy.git
Project-URL: Issues, https://github.com/kmnhan/erlabpy/issues
Project-URL: Changelog, https://github.com/kmnhan/erlabpy/blob/main/CHANGELOG.md
Provides-Extra: complete
Provides-Extra: io
Provides-Extra: misc
Provides-Extra: perf
Provides-Extra: viz
Description-Content-Type: text/markdown

<div align="center">
  <a href="https://erlabpy.readthedocs.io/">
    <picture>
      <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/_static/icon_dark.png?raw=true">
      <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/_static/icon_light.png?raw=true">
      <img alt="ERLabPy" width="120" src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/_static/icon_light.png?raw=true">
    </picture>
  </a>

# ERLabPy

[![DOI](https://zenodo.org/badge/453256660.svg)](https://zenodo.org/badge/latestdoi/453256660)
[![Supported Python Versions](https://img.shields.io/pypi/pyversions/erlab?logo=python&logoColor=white)](https://pypi.org/project/erlab/)
[![PyPi](https://img.shields.io/pypi/v/erlab?logo=pypi&logoColor=white)](https://pypi.org/project/erlab/)
[![Conda Version](https://img.shields.io/conda/vn/conda-forge/erlab?logo=condaforge&logoColor=white)](https://anaconda.org/conda-forge/erlab)
[![Workflow Status](https://img.shields.io/github/actions/workflow/status/kmnhan/erlabpy/ci.yml?branch=main&logo=github&label=tests)](https://github.com/kmnhan/erlabpy/actions/workflows/ci.yml)
[![Documentation Status](https://img.shields.io/readthedocs/erlabpy?logo=readthedocs&logoColor=white)](https://erlabpy.readthedocs.io/)
[![Codecov Coverage](https://img.shields.io/codecov/c/github/kmnhan/erlabpy?logo=codecov&logoColor=white)](https://codecov.io/gh/kmnhan/erlabpy)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
[![SPEC 1 — Lazy Loading of Submodules and Functions](https://img.shields.io/badge/SPEC-1-green?labelColor=%23004811&color=%235CA038)](https://scientific-python.org/specs/spec-0001/)
[![Custom GPT](https://img.shields.io/badge/ChatGPT-ARPES%20Analysis%20Assistant-10a37f?logo=openai&logoColor=white)](https://chatgpt.com/g/g-6962fdab53008191ac5e3307a694b0a9-arpes-analysis-assistant)
[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/kmnhan/erlabpy)

</div>

`erlab` provides tools to handle, manipulate, and visualize data from angle-resolved photoemission spectroscopy (ARPES) experiments.

Key elements are seamlessly integrated with popular scientific Python workflows. A fast native graphical user interface is provided for data exploration and manipulation, allowing users to get started quickly without needing to write code. The library is designed to be flexible and extensible, making it suitable for a wide range of data analysis tasks.

## Features

- **Data Loading**: Flexible system for various data formats.
- **Data Manipulation**: Tools for interpolation, masking, symmetrization, and more.
- **Plotting**: Functions for 2D and 3D publication-quality plots.
- **Fitting**: Functions for curve fitting, including Fermi-Dirac distributions, MDCs, EDCs, and more.
- **Interactive Visualization**: Responsive plotting routines similar to Igor Pro.

## Getting Started

Start with the [Getting Started guide](https://erlabpy.readthedocs.io/en/stable/getting-started.html).

## Documentation

Full documentation is available on [Read the Docs](https://erlabpy.readthedocs.io/).

## Gallery

Interactive windows support dark mode.

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/imagetool_dark.png?raw=true">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/imagetool_light.png?raw=true">
  <img alt="ImageTool in action." src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/imagetool_light.png?raw=true">
</picture>

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ktool_1_dark.png?raw=true">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ktool_1_light.png?raw=true">
  <img alt="Interactive momentum conversion tool." src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ktool_1_light.png?raw=true">
</picture>

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ftool_2d_fit_dark.png?raw=true">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ftool_2d_fit_light.png?raw=true">
  <img alt="Interactive curve fitting tool." src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/ftool_2d_fit_light.png?raw=true">
</picture>

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/manager_dark.png?raw=true">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/manager_light.png?raw=true">
  <img alt="ImageTool manager window." src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/manager_light.png?raw=true">
</picture>

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/explorer_dark.png?raw=true">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/explorer_light.png?raw=true">
  <img alt="Data explorer window." src="https://github.com/kmnhan/erlabpy/blob/main/docs/source/images/explorer_light.png?raw=true">
</picture>

## Contributing

We welcome contributions. Report issues to the [issue tracker](https://github.com/kmnhan/erlabpy/issues). For questions, visit the [Discussions page](https://github.com/kmnhan/erlabpy/discussions). To contribute, fork the repository and submit a pull request. See our [Contributing page](https://erlabpy.readthedocs.io/en/stable/contributing.html) for more information.

## License

Licensed under the [GPL-3.0 License](LICENSE).

## Cite this software

[![DOI](https://zenodo.org/badge/453256660.svg)](https://zenodo.org/badge/latestdoi/453256660)

If you use `erlab` in your research, citation is appreciated! Citation information for each package version is available on [Zenodo](https://zenodo.org/records/16809480).
