Skip to main content

n-dimensional array viewer in Python

Project description

napari

multi-dimensional image viewer for python

napari on Binder image.sc forum License Comprehensive Test Code coverage Supported Python versions Python package index Python package index download statistics Conda Version Conda Downloads Development Status Ruff DOI SPEC 0 — Minimum Supported Dependencies

napari is a fast, interactive, multi-dimensional image viewer for Python. It's designed for browsing, annotating, and analyzing large multi-dimensional images. It's built on top of Qt (for the GUI), vispy (for performant GPU-based rendering), and the scientific Python stack (numpy, scipy).

We're developing napari in the open! But the project is in an alpha stage, and there will still likely be breaking changes with each release. You can follow progress on this repository, test out new versions as we release them, and contribute ideas and code.

If you want to refer to our documentation, please go to napari.org. If you want to contribute to it, please refer to the contributing section below.

We're working on tutorials, but you can also quickly get started by looking below.

try it out now!

Install uv to try napari. Then launch the program in a terminal window with the command:

uvx "napari[all]"

In the File menu, select Open Sample and select a sample image to get started.

installation

For a full installation, we recommend installing napari into a virtual environment, like this:

conda create -y -n napari-env -c conda-forge python=3.11
conda activate napari-env
python -m pip install "napari[all]"

If you prefer conda over pip, you can replace the last line with: conda install -c conda-forge napari pyqt

See here for the full installation guide.

simple example

This example uses a data sample from the scikit-image library, but you can pass your own dataset as an array to imshow. From inside an IPython shell, you can open up an interactive viewer by calling

from skimage import data
import napari

viewer, layers = napari.imshow(data.cells3d(), channel_axis=1, ndisplay=3)

napari viewer with a multichannel image of cells displayed as two image layers: nuclei and membrane.

To use napari from inside a script, use napari.run():

from skimage import data
import napari

viewer, layers = napari.imshow(data.cells3d(), channel_axis=1, ndisplay=3)
napari.run()  # start the "event loop" and show the viewer

features

Check out the scripts in our examples folder to see some of the functionality we're developing!

napari supports six main different layer types, Image, Labels, Points, Vectors, Shapes, and Surface, each corresponding to a different data type, visualization, and interactivity. You can add multiple layers of different types into the viewer and then start working with them, adjusting their properties.

All our layer types support n-dimensional data and the viewer provides the ability to quickly browse and visualize either 2D or 3D slices of the data.

napari also supports bidirectional communication between the viewer and the Python kernel, which is especially useful when launching from jupyter notebooks or when using our built-in console. Using the console allows you to interactively load and save data from the viewer and control all the features of the viewer programmatically.

You can extend napari using custom shortcuts, key bindings, and mouse functions.

tutorials

For more details on how to use napari checkout our tutorials. These are still a work in progress, but we'll be updating them regularly.

mission, values, and roadmap

For more information about our plans for napari you can read our mission and values statement, which includes more details on our vision for supporting a plugin ecosystem around napari. You can see details of the project roadmap here.

contributing

Contributions are encouraged! Please read our contributing guide to get started. Given that we're in an early stage, you may want to reach out on our GitHub Issues before jumping in.

If you want to contribute to or edit our documentation, please go to napari/docs.

Visit our project weather report dashboard to see metrics and how development is progressing.

code of conduct

napari has a Code of Conduct that should be honored by everyone who participates in the napari community.

governance

You can learn more about how the napari project is organized and managed from our governance model, which includes information about, and ways to contact the @napari/steering-council and @napari/core-devs.

citing napari

If you find napari useful please cite this repository using its DOI as follows:

napari contributors (2019). napari: a multi-dimensional image viewer for python. doi:10.5281/zenodo.3555620

Note this DOI will resolve to all versions of napari. To cite a specific version please find the DOI of that version on our zenodo page. The DOI of the latest version is in the badge at the top of this page.

help

We're a community partner on the image.sc forum and all help and support requests should be posted on the forum with the tag napari. We look forward to interacting with you there.

Bug reports should be made on our GitHub issues using the bug report template. If you think something isn't working, don't hesitate to reach out - it is probably us and not you!

institutional and funding partners

CZI logo

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

napari-0.6.3rc0.tar.gz (3.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

napari-0.6.3rc0-py3-none-any.whl (3.5 MB view details)

Uploaded Python 3

File details

Details for the file napari-0.6.3rc0.tar.gz.

File metadata

  • Download URL: napari-0.6.3rc0.tar.gz
  • Upload date:
  • Size: 3.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for napari-0.6.3rc0.tar.gz
Algorithm Hash digest
SHA256 97150acc3bf9cec9175340df86bd4465aa9907e04bab9ed9569ce7fd0285c228
MD5 d5e9174227fab6989275c28bee039552
BLAKE2b-256 6e131f55df338818faea816dcb99f73d7ce5e5d75b9675e8a2c8fd7b70eb82a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for napari-0.6.3rc0.tar.gz:

Publisher: make_release.yml on napari/napari

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file napari-0.6.3rc0-py3-none-any.whl.

File metadata

  • Download URL: napari-0.6.3rc0-py3-none-any.whl
  • Upload date:
  • Size: 3.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for napari-0.6.3rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 95202188d55661b236d11cc99e72633b7ea46ac84d1b394bbc4a7e6480b2cc45
MD5 a579b37a35a5dadcc76a4ea7d741c6e8
BLAKE2b-256 a9b9874cca5ec957c8e40c53551d9e206cd74d89b2738feccadc0bf47eab51a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for napari-0.6.3rc0-py3-none-any.whl:

Publisher: make_release.yml on napari/napari

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page