Napari Phasors

A simple plugin to use phasor analysis

  • Bruno Pannunzio, Marcelo Leomil Zoccoler, Joaquín Rivero, Bruno Schuty, Leonel Malacrida

License BSD-3 PyPI Python Version tests codecov napari hub Documentation Status DOI

A comprehensive plugin for phasor analysis in napari. Based on the phasorpy library.


Documentation

Full documentation, including step-by-step guides and the API reference, is available at https://napari-phasors.readthedocs.io.

Features

  • Reading a wide range of FLIM and hyperspectral file formats:
    • Raw data formats:
      • .ptu, .fbd, .sdt, .lsm, .tif, .tiff, .czi, .flif, .bh, .b&h, .bhz, .lif, .bin, .json
    • Processed data formats:
      • .ome.tif, .ome.tiff, .r64, .ref, .ifli, .lif, .json
  • Phasor analysis on multiple layers simultaneously, including support for stacking multiple raw data files
  • Calibration using reference images with known lifetimes
  • Filtering with median, wavelet, and automatic thresholding (Otsu, Li, Yen)
  • Component analysis for multi-component systems
  • Phasor Mapping — colormap apparent/normal lifetime, phasor phase, and phasor modulation per pixel, with interactive 1D histograms, statistics tables, and arc overlay tools
  • FRET analysis with donor trajectory visualization and multi-layer donor/background source selection
  • Selections via manual drawing, circular/polar/elliptical cursors, and automatic clustering
  • Exporting results as OME-TIF or CSV (multiple layers simultaneously)

Installation

There are several ways to install napari-phasors:

Easiest: napari's plugin manager

If you already have napari installed, go to Plugins → Install/Uninstall Plugins..., search for napari-phasors, and click Install.

Standalone installer (no Python required)

Pre-built installers for Windows (.exe), macOS (.dmg), and Linux (.sh) are available on the latest release page. Download and run — no Python installation needed. Installers are ~350–470 MB and bundle everything required.

Using conda + pip

We recommend using miniforge. If you use Anaconda or Miniconda, replace mamba with conda.

mamba create -y -n napari-phasors-env napari pyqt6 python=3.14 # or 3.12, 3.13

Activate the environment :

conda activate napari-phasors-env
pip install napari-phasors

Development version

pip install git+https://github.com/napari-phasors/napari-phasors.git

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

Pre-commit Hooks

This project uses pre-commit to run black, isort, and ruff automatically on every commit. To set it up:

pip install pre-commit
pre-commit install

From now on, every git commit will auto-format and lint your code before the commit goes through. You can also run the hooks manually on all files:

pre-commit run --all-files

License

Distributed under the terms of the BSD-3 license, "napari-phasors" is free and open source software.

Please cite doi: https://doi.org/10.5281/zenodo.14647626 if napari-phasors contributes to a project that leads to a publication.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Version:

  • 0.6.3

Last updated:

  • 2026-05-28

First released:

  • 2024-11-22

License:

  • Copyright (c) 2026, Marcelo L....

Python versions supported:

    Operating system:

    • Information not submitted

    Requirements:

    • phasorpy>=0.8
    • qtpy
    • biaplotter>=0.4.2
    • fbdfile
    • sdtfile
    • ptufile
    • tifffile
    • pandas
    • pyqt6
    • pawflim
    • scipy
    • czifile
    • lfdfiles
    • tox; extra == "testing"
    • pytest; extra == "testing"
    • pytest-cov; extra == "testing"
    • pytest-qt; extra == "testing"
    • napari; extra == "testing"
    • qtpy; extra == "testing"
    • scikit-image; extra == "testing"
    • biaplotter>=0.4.2; extra == "testing"
    • pyqt6; extra == "testing"
    • pandas; extra == "testing"
    • black; extra == "testing"
    • isort; extra == "testing"
    • ruff; extra == "testing"
    • pre-commit; extra == "testing"
    • phasorpy>=0.8; extra == "testing"
    • tifffile; extra == "testing"
    • fbdfile; extra == "testing"
    • sdtfile; extra == "testing"
    • ptufile; extra == "testing"
    • pawflim; extra == "testing"
    • scipy; extra == "testing"
    • czifile; extra == "testing"
    • lfdfiles; extra == "testing"
    Website by the napari team, original design by CZI. Go to napari main website.