- Notifications
You must be signed in to change notification settings - Fork433
napari: a fast, interactive, multi-dimensional image viewer for python
License
napari/napari
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
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 developingnapari in the open! But the project is in analpha stage, and there will still likely bebreaking changes with each release. You can follow progress onthis repository, test out new versions as we release them, and contribute ideas and code.
If you want to refer to our documentation, please go tonapari.org. If you want to contribute to it, please refer to thecontributing section below.
We're working ontutorials, but you can also quickly get started by looking below.
It is recommended to install napari into a virtual environment, like this:
conda create -y -n napari-env -c conda-forge python=3.11conda activate napari-envpython -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 fullinstallation guide.
(The examples below require thescikit-image
package to run. We just use data samples from this package for demonstration purposes. If you change the examples to use your own dataset, you may not need to install this package.)
From inside an IPython shell, you can open up an interactive viewer by calling
fromskimageimportdataimportnapariviewer=napari.view_image(data.cells3d(),channel_axis=1,ndisplay=3)
To use napari from inside a script, usenapari.run()
:
fromskimageimportdataimportnapariviewer=napari.view_image(data.cells3d(),channel_axis=1,ndisplay=3)napari.run()# start the "event loop" and show the viewer
Check out the scripts in ourexamples
folder to see some of the functionality we're developing!
napari supports six main different layer types,Image
,Labels
,Points
,Vectors
,Shapes
, andSurface
, 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 extendnapari using custom shortcuts, key bindings, and mouse functions.
For more details on how to usenapari
checkout ourtutorials. These are still a work in progress, but we'll be updating them regularly.
For more information about our plans fornapari
you can read ourmission and values statement, which includes more details on our vision for supporting a plugin ecosystem around napari.You can see details ofthe project roadmap here.
Contributions are encouraged! Please read ourcontributing guide to get started. Given that we're in an early stage, you may want to reach out on ourGitHub Issues before jumping in.
If you want to contribute to or edit our documentation, please go tonapari/docs.
Visit ourproject weather report dashboard to see metrics and how development is progressing.
napari
has aCode of Conduct that should be honored by everyone who participates in thenapari
community.
You can learn more about how thenapari
project is organized and managed from ourgovernance model, which includes information about, and ways to contact the@napari/steering-council and @napari/core-devs.
If you findnapari
useful please citethis 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 theDOI of that version on ourzenodo page. The DOI of the latest version is in the badge at the top of this page.
We're a community partner on theimage.sc forum and all help and support requests should be posted on the forum with the tagnapari
. We look forward to interacting with you there.
Bug reports should be made on ourGitHub issues usingthe bug report template. If you think something isn't working, don't hesitate to reach out - it is probably us and not you!
About
napari: a fast, interactive, multi-dimensional image viewer for python