eelsmapper


Nameeelsmapper JSON
Version 0.2.5 PyPI version JSON
download
home_pageNone
SummaryData-driven analysis pipeline for STEM-EELS spectra. See project at <a href="https://zhenyuan992.github.io/eelsmapper"> https://zhenyuan992.github.io/eelsmapper </a>
upload_time2025-07-10 06:40:46
maintainerNone
docs_urlNone
authorYeo Zhen Yuan
requires_python>=3.8
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # [eelsmapper](https://zhenyuan992.github.io/eelsmapper/index.html)

<!-- <div align="center"><img src="logo/logo_eelsmapper.png" alt="Logo of eelsmapper" width="50%" /></div> -->

<div align="center"><img src="https://raw.githubusercontent.com/zhenyuan992/eelsmapper/refs/heads/main/logo/logo_eelsmapper.png" alt="Logo of eelsmapper" width="50%" /></div>

**[eelsmapper](https://zhenyuan992.github.io/eelsmapper/index.html)** is a data-driven pipeline for analyzing STEM-EELS spectra to perform high-resolution compositional mapping without relying on reference spectra. It integrates PCA, t-SNE (and/or UMAP), clustering, mutual information, and vector quantization to uncover subtle chemical differences and discover novel material phases. Installable with `pip install eelsmapper` from [pypi.org eelsmapper](https://pypi.org/search/?q=eelsmapper)

<!-- ![Overall schematic of eelsmapper](image_schematic.png) -->

![Overall schematic of eelsmapper](https://raw.githubusercontent.com/zhenyuan992/eelsmapper/refs/heads/main/image_schematic.png)

---

## Purpose

STEM-EELS data is high-dimensional and noisy, making it challenging to interpret with traditional methods. **eelsmapper** offers a robust, modular pipeline for:

- Denoising spectra (PCA)
- Visualizing compositional patterns (t-SNE and/or UMAP)
- Clustering spectra (K-Means)
- Identifying correlated elemental regions (Mutual Information)
- Enhancing signal quality (Vector Quantization)
- Discovering new material phases without needing reference spectra


---

## Installation:

`pip install eelsmapper`

---

## Demo:

``` python
# assuming you have installed with !pip install eelsmapper
from eelsmapper.pipeline import run_pipeline
import numpy as np

data = np.load("specs.npz")["arr_0"]
data = data.reshape(-1,data.shape[-1])

run_pipeline( data )
```

## Notes:

This package is a python implementation of the following conference papers/talks:

### Data-Driven Analysis of STEM-EELS Spectra for High-Resolution Compositional Mapping

PDF found at https://www.scienceopen.com/hosted-document?doi=10.14293/APMC13-2025-0303

### Unsupervised Machine Learning for Phase Identification and Characterization of High-Resolution STEM EELS in Novel Battery Materials

PDF found at https://openreview.net/forum?id=dw8DFI2esQ

## How to cite:

    Yeo ZY, Lai W, Lee JH, Balakrishnan D, Özyilmaz B, Duane Loh N. Data-driven analysis of STEM-EELS spectra for high-resolution compositional mapping. 13th Asia Pacific Microscopy Congress 2025 (APMC13). 2025; 303. doi:10.14293/apmc13-2025-0303
    

    Yeo ZY, Lai W, Lee JH, Balakrishnan D, Özyilmaz B, Duane Loh N. Unsupervised machine learning for phase identification and characterization of high-resolution STEM EELS in novel battery materials. 2025. Available: https://openreview.net/pdf?id=dw8DFI2esQ
  

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "eelsmapper",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "Yeo Zhen Yuan",
    "author_email": "yeozy@nus.edu.sg",
    "download_url": "https://files.pythonhosted.org/packages/7f/34/f23054c8faa05b7002242cf33f19bbf13846719bfcf1cad21b6f4e42a542/eelsmapper-0.2.5.tar.gz",
    "platform": null,
    "description": "# [eelsmapper](https://zhenyuan992.github.io/eelsmapper/index.html)\n\n<!-- <div align=\"center\"><img src=\"logo/logo_eelsmapper.png\" alt=\"Logo of eelsmapper\" width=\"50%\" /></div> -->\n\n<div align=\"center\"><img src=\"https://raw.githubusercontent.com/zhenyuan992/eelsmapper/refs/heads/main/logo/logo_eelsmapper.png\" alt=\"Logo of eelsmapper\" width=\"50%\" /></div>\n\n**[eelsmapper](https://zhenyuan992.github.io/eelsmapper/index.html)** is a data-driven pipeline for analyzing STEM-EELS spectra to perform high-resolution compositional mapping without relying on reference spectra. It integrates PCA, t-SNE (and/or UMAP), clustering, mutual information, and vector quantization to uncover subtle chemical differences and discover novel material phases. Installable with `pip install eelsmapper` from [pypi.org eelsmapper](https://pypi.org/search/?q=eelsmapper)\n\n<!-- ![Overall schematic of eelsmapper](image_schematic.png) -->\n\n![Overall schematic of eelsmapper](https://raw.githubusercontent.com/zhenyuan992/eelsmapper/refs/heads/main/image_schematic.png)\n\n---\n\n## Purpose\n\nSTEM-EELS data is high-dimensional and noisy, making it challenging to interpret with traditional methods. **eelsmapper** offers a robust, modular pipeline for:\n\n- Denoising spectra (PCA)\n- Visualizing compositional patterns (t-SNE and/or UMAP)\n- Clustering spectra (K-Means)\n- Identifying correlated elemental regions (Mutual Information)\n- Enhancing signal quality (Vector Quantization)\n- Discovering new material phases without needing reference spectra\n\n\n---\n\n## Installation:\n\n`pip install eelsmapper`\n\n---\n\n## Demo:\n\n``` python\n# assuming you have installed with !pip install eelsmapper\nfrom eelsmapper.pipeline import run_pipeline\nimport numpy as np\n\ndata = np.load(\"specs.npz\")[\"arr_0\"]\ndata = data.reshape(-1,data.shape[-1])\n\nrun_pipeline( data )\n```\n\n## Notes:\n\nThis package is a python implementation of the following conference papers/talks:\n\n### Data-Driven Analysis of STEM-EELS Spectra for High-Resolution Compositional Mapping\n\nPDF found at https://www.scienceopen.com/hosted-document?doi=10.14293/APMC13-2025-0303\n\n### Unsupervised Machine Learning for Phase Identification and Characterization of High-Resolution STEM EELS in Novel Battery Materials\n\nPDF found at https://openreview.net/forum?id=dw8DFI2esQ\n\n## How to cite:\n\n    Yeo ZY, Lai W, Lee JH, Balakrishnan D, \u00d6zyilmaz B, Duane Loh N. Data-driven analysis of STEM-EELS spectra for high-resolution compositional mapping. 13th Asia Pacific Microscopy Congress 2025 (APMC13). 2025; 303. doi:10.14293/apmc13-2025-0303\n    \n\n    Yeo ZY, Lai W, Lee JH, Balakrishnan D, \u00d6zyilmaz B, Duane Loh N. Unsupervised machine learning for phase identification and characterization of high-resolution STEM EELS in novel battery materials. 2025. Available: https://openreview.net/pdf?id=dw8DFI2esQ\n  \n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Data-driven analysis pipeline for STEM-EELS spectra. See project at <a href=\"https://zhenyuan992.github.io/eelsmapper\"> https://zhenyuan992.github.io/eelsmapper </a>",
    "version": "0.2.5",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "aac6ebde7855f0fedfc4e6ba75a84d6af2f64e3334506b62dc766145fa3ab324",
                "md5": "0ba658ad8ee41df49d82f0393340e9c0",
                "sha256": "1be550c281bf222faa4fc77e2c31e2d3bfb0af123d3ca8adbae5034ae290797f"
            },
            "downloads": -1,
            "filename": "eelsmapper-0.2.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0ba658ad8ee41df49d82f0393340e9c0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 5967,
            "upload_time": "2025-07-10T06:40:41",
            "upload_time_iso_8601": "2025-07-10T06:40:41.872903Z",
            "url": "https://files.pythonhosted.org/packages/aa/c6/ebde7855f0fedfc4e6ba75a84d6af2f64e3334506b62dc766145fa3ab324/eelsmapper-0.2.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7f34f23054c8faa05b7002242cf33f19bbf13846719bfcf1cad21b6f4e42a542",
                "md5": "be17f0117e35c7a8e777fe69db16af10",
                "sha256": "16e0842e114325facac0f8d007ac17c3e3871c93119c77bda7d2149dde62b886"
            },
            "downloads": -1,
            "filename": "eelsmapper-0.2.5.tar.gz",
            "has_sig": false,
            "md5_digest": "be17f0117e35c7a8e777fe69db16af10",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 5595,
            "upload_time": "2025-07-10T06:40:46",
            "upload_time_iso_8601": "2025-07-10T06:40:46.489260Z",
            "url": "https://files.pythonhosted.org/packages/7f/34/f23054c8faa05b7002242cf33f19bbf13846719bfcf1cad21b6f4e42a542/eelsmapper-0.2.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-10 06:40:46",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "eelsmapper"
}
        
Elapsed time: 0.40332s