Ahmet Can Solak;
Draga Doncila Pop;
Alan R Lowe;
We're happy to announce the release of napari 0.4.0! This might be our biggest
release yet — see below for highlights. Note also that, following the NEP-29
we have dropped support for Python 3.6: napari 0.4 requires Python 3.7 or
higher to run.
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).
For more information, examples, and documentation, please visit our website at
napari 0.4.0 is the culmination of months of improvements to our data models.
It finally brings the data from all layers into a consistent, global coordinate
system. This means our display is more accurate (we aim for pixel-perfect
precision), and it will be easier to build applications for accurate
measurement on top of napari.
Thanks to the global coordinate system we are now able to display a scale bar,
axis directions, and provide a cursor model that reports the current cursor
coordinates within the current world view. (Currently, physical units are not
supported, but they are coming soon!) We can also natively display data
transformed with an arbitrary affine transform, making it easy to view things
like light sheet data straight out of the microscope!
We have also added a new layer type, our first in over a year, to display
tracking data. Many thanks to Alan Lowe from UCL/The Turing Institute for this
Finally, our experimental asynchronous rendering mode continues to be improved.
Use the NAPARI_ASYNC=1 environment variable to try it, and please report
issues at https://github.com/napari/napari/issues.
We thank the many contributors who have made this release possible!
Add camera model (#854)
Tracks layer (#1361)
Affine transforms (#1616)
Add axes visual (#1719)
Add scale bar (#1720)
Add a welcome visual (#1721)
Add BOP (blue/orange/purple) colormaps (#1743)
Add cursor model (#1763)
Dataclass decorator with events and properties (#1475)
Docker Integration by adding dockerfile and docker.md (#1496)
Don't show colormap for rgb images (#1586)
Fix NameError: name 'Optional' is not defined on Python 3.9 (#1650)
Async-2.6: Move async into experimental (#1659)
Skip axes with size 1 in roll operation (#1665)
Reduce the default dask cache size (#1666)
Async-2.7: Vendor Cachetools (#1671)
Pull out layer visual transform code (#1673)
Async-3: Add ChunkCache (#1675)
Async-4: Config File (#1676)
Async-5: Timing Infrastructure (#1678)
Async-6: DelayQueue (#1679)
Async-7: Auto-async (#1683)
Async-8: config cleanup (#1684)
Async-9: async unit testing infra (#1685)
Allow dask development version to work with napari (#1692)