Skip to main content

Powerful widgets and type annotations for napari plugin widgets

Project description

napari-power-widgets

License BSD-3 PyPI Python Version tests codecov napari hub

Powerful magicgui widgets and type annotations for general-purpose napari plugin development.

napari-power-widgets makes the full use of type-to-widget mapping strategy of magicgui to provide napari-specific types and value-widgets, which will be very useful to improve UI/UX of your napari plugins with simple codes.

Currently, napari-power-widgets does not provide any reader, writer or widget. It is supposed to be used programmatically.

Examples

Some types/widgets and the possible usage are picked up here (→ check all). If you have any neat ideas, please open an issue.

1. BoxSelection

Alias of a four-float tuple for 2D selection. You can set the value by drawing a interaction box in the viewer.

e. g. : image cropper, rectangular labeling etc.

@magicgui
def f(box: BoxSelection):
    print(box)
viewer.window.add_dock_widget(f)

2. OneOfRectangles

Alias of np.ndarray for one of rectangles in a Shapes layer.

e. g. : image cropper, rectangular labeling etc.

@magicgui
def f(rect: OneOfRectangles):
    print(rect)
viewer.window.add_dock_widget(f)

3. LineData

Alias of np.ndarray for a line data. You can obtain the data by manually drawing a line in the viewer.

e. g. : line profiling, kymograph etc.

@magicgui
def f(line: LineData):
    print(line)
viewer.window.add_dock_widget(f)

4. OneOfLabels

Alias of boolean np.ndarray for a labeled region. You can choose ones by directly clicking the viewer.

e. g. : image masking, feature measurement etc.

@magicgui
def f(label: OneOfLabels):
    pass
viewer.window.add_dock_widget(f)

5. ZRange

Alias of a tuple of float that represents the limit of the third dimension. You can select the values by moving the dimension slider.

e. g. : movie trimming, partial image projection etc.

@magicgui
def f(zrange: ZRange):
    print(zrange)
viewer.window.add_dock_widget(f)


This napari plugin was generated with Cookiecutter using @napari's cookiecutter-napari-plugin template.

Installation

You can install napari-power-widgets via pip:

pip install napari-power-widgets

To install latest development version :

pip install git+https://github.com/hanjinliu/napari-power-widgets.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.

License

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

Issues

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

Project details


Download files

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

Source Distribution

napari-power-widgets-0.0.1.tar.gz (17.0 kB view hashes)

Uploaded Source

Built Distribution

napari_power_widgets-0.0.1-py3-none-any.whl (20.8 kB view hashes)

Uploaded Python 3

Supported by

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