Skip to main content

List, preview, and open data from the CZII CryoET Data Portal

Project description

napari-cryoet-data-portal

MIT License Python package index Supported Python versions Test status Code coverage napari hub

List and open tomograms from the CZ Imaging Institute's CryoET Data Portal in napari.

Plugin showing tomogram TS_043

Installation

You can install the latest stable version using pip:

pip install napari-cryoet-data-portal

You will also need to install napari separately as a Python package in the same environment. One way to do that with Qt included is to run:

pip install "napari[all]"

but more generally you should follow the latest napari installation instructions.

Usage

See the following video for a demonstration of basic usage of the plugin.

https://github.com/chanzuckerberg/napari-cryoet-data-portal/assets/2608297/51207e08-68af-446a-87bb-3de9c6756d35

Click the Connect button to establish a connection to the data portal.

Connect button and URL to the portal

You can optionally query a subset of datasets, runs, voxel spacings, or tomograms using their corresponding IDs. This can speed up the listing process as the portal grows. To do so, select an ID type in the associated drop-down box from this panel, then enter the IDs of interest separated by commas in the text box next to it. For example, if you only want to list datasets 10000 and 10001, select Dataset IDs from the drop-down box and enter the text 10000,10001 in the text box. By default, all datasets are listed.

After connecting to the portal, datasets are added below as they are found.

Datasets and tomograms in the portal shown as an interactive tree

Datasets and tomograms can be filtered by specifying a regular expression pattern.

Datasets and tomograms filtered by the text 26, so that only two are shown

Selecting a dataset displays its metadata, which can be similarly explored and filtered.

Metadata of dataset 10000 shown as an interactive tree of keys and values

Selecting a tomogram displays its metadata and also opens the lowest resolution tomogram and all of its associated point annotations in the napari viewer.

Metadata of tomogram TS_026 shown as an interactive tree of keys and values

Higher resolution tomograms can be loaded instead by selecting a different resolution and clicking the Open button.

Open button and resolution selector showing high resolution

In this case, napari only loads the data that needs to be displayed in the canvas. While this can reduce the amount of data loaded, it may also cause performance problems when initially opening and exploring the data. By default, opening a new tomogram clears all the existing layers in napari. If instead you want to keep those layers, uncheck the associated check-box in this panel.

In general, finding and fetching data from the portal can take a long time. All plugin operations that fetch data from the portal try to run concurrently in order to keep interaction with napari and the plugin as responsive as possible. These operations can also be cancelled by clicking the Cancel button.

Progress bar with loading status and cancel button

Contributing

This is still in early development, but contributions and ideas are welcome! Don't hesitate to open an issue or open a pull request to help improve this plugin.

To setup a development environment, fork this repository, clone your fork, change into its top level directory and run:

pip install -e ".[testing]"

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to opensource@chanzuckerberg.com.

Security

If you believe you have found a security issue, please see our security policy on how to report it.

License

Distributed under the terms of the MIT license, "napari-cryoet-data-portal" is free and open source software. See the license file for more details.

Acknowledgements

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

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_cryoet_data_portal-0.5.0.tar.gz (29.1 kB view details)

Uploaded Source

Built Distribution

napari_cryoet_data_portal-0.5.0-py3-none-any.whl (32.1 kB view details)

Uploaded Python 3

File details

Details for the file napari_cryoet_data_portal-0.5.0.tar.gz.

File metadata

File hashes

Hashes for napari_cryoet_data_portal-0.5.0.tar.gz
Algorithm Hash digest
SHA256 c979fb37759693c083dde5abc6645ddd4c3840cb90d389d2b7ee7fbb19d2c731
MD5 22af522b04a9123f745715f556bcfd8b
BLAKE2b-256 93327812f0f21385041a8f4a153d179afda8b3e5998134e6401b3c014cc12a19

See more details on using hashes here.

File details

Details for the file napari_cryoet_data_portal-0.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for napari_cryoet_data_portal-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 77a84c83d0d2620eac11da5486050d5cd467be2aa21aaeecd1fa0c16ba0fb89a
MD5 edfa8aaf7b8c2338614cd8d157da1fa6
BLAKE2b-256 d6583fcb06175c0682de98cfa09e2f2864b26aa0c02f830d277dee076f9e56cb

See more details on using hashes here.

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