Skip to main content

OMERO Vitessce multimodal data viewer plugin for OMERO.web

Project description

Badge_OMERO Badge_PyPI

OMERO.omero_vitessce

OMERO Vitessce multimodal data viewer.

Installation

This section assumes that an OMERO.web is already installed.

Install the app using pip:

NB: You need to ensure that you are running pip from the python environment where omero-web is installed.

$ pip install -U omero-vitessce

Add the app to the omero.web.apps setting:

$ omero config append omero.web.apps '"omero_vitessce"'

Add omero_vitessce as a tab in the right-hand-side panel:

$ omero config append omero.web.ui.right_plugins '["Vitessce", "omero_vitessce/webclient_plugins/right_plugin.vitessce.js.html", "vitessce_tab"]'

Add omero_vitessce as an open-with option:

omero config append omero.web.open_with '["omero_vitessce", "open_vitessce", {"supported_objects": ["project", "dataset", "image"], "label": "Vitessce"}]'

Add the omero web address (replace ´'"http://localhost:4080"'´ with your address):

$ omero config set omero.web.omero_vitessce.serveraddress '"http://localhost:4080"'

Now restart OMERO.web as normal for the configuration above to take effect.

omero-web-zarr

While omero-web-zarr is not a requirement, but it is strongly recommended to have it installed and enabled for using this plugin omero-web-zarr is necessary to take advantage fully of the autogenerated config files for the Vitessce viewer, as they rely on omero-web-zarr to serve the images to the viewer.

Please see https://pypi.org/project/omero-web-zarr/ for instructions on installing and enabling the omero-web-zarr plugin.

Usage

Selecting the viewer

The plugin can be used with:

  • Vitessce Tab on the right hand side panel.
  • Open with -> Vitessce on the left side panel.

Right-hand-side panel:

  • Prexisting config files:

Clicking the link will open a new tab with the viewer displaying the selected configuration.
Link-List-image

  • Generating custom config files:

The form allows the user to automatically generate a config file with the selected parameters. After clicking the Generate Config button a config file is generated and attached to the dataset/image. The viewer displaying the autogenerated configuration will open in a new tab.
Form-image

Open-with:

Right click on a dataset or an images in the left-panel and select open-with -> Vitessce.
This will open the vitessce viewer in a new tab using the first configuration file attachement. Openwith-image

Viewer window

After autogenerating or selecting a config file, the Vitessce viewer is opened in a new tab: Viewer GIF

Config files

The omero-vitessce plugin considers all files with the .json extension attached to the image or dataset as config files for the viewer. The config files should follow the vitessce view-config-json format: http://vitessce.io/docs/view-config-json/

Custom config files generated from the right-tab

Config files can be generated for:

  • images
  • datasets

Assumes that omero-web-zarr is available to serve the images. The attachements must be in .csv format and the column with the cell identifiers should be consistent across attachements. Only files attached to the dataset/image are available in the form.

The following fields are available:

  • Config file name (required, "VitessceConfig-YYYY.MM.DD_HHMMSS.json"): Name of the config file to attach, a ".json" extension is added if missing.
  • Image (required): OMERO Image to view, OME-NGFF images only.
  • Segmentation (optional, None): Segmentation to overlay on the image, OME-NGFF images only.
  • Cell identities (optional, None): .csv file with at least 2 columns: Cell id column and Label column defined in the 2 fileds below.
  • Cell id column (optional, "cell_id"): Name of the Cell id column used in Cell identities, Expression, Embeddings.
  • Label column (optional, "label"): Name of the Label used in Cell identities.
  • Expression (optional, None): .csv file with the Cell id column all other columns are considered as expression values and should be numerical.
  • Embeddings (optional, None): .csv file with the Cell id column and the Embedding x and Embedding y columns defined in the 2 fileds below.
  • Embedding x (optional, "UMAP_1"): Name of the Embedding x used in Embeddings.
  • Embedding y (optional, "UMAP_2"): Name of the Embedding y used in Embeddings.
  • Molecules (optional, None): .csv file with at least 4 columns: Molecule id, label, x, y (headers in the fields below).
  • Molecule id (optional, "id"): Name of the Molecule id column used in Molecules.
  • Molecule label (optional, "gene"): Name of the Molecule label column used in Molecules.
  • Molecule x (optional, "x"): Name of the Molecule x column used in Molecules.
  • Molecule y (optional, "y"): Name of the Molecule y column used in Molecules.
  • Histograms (required , True): Add 3 plots showing: The number of transcripts per cell, the number of cells in each set, gene expression in each set.
  • Heatmap (required , True): Adds an heatmap.
  • Status (required , False): Adds a status panel to display info on the selected cell.
  • Description (required , False): Adds a description panel to display info on the dataset/image (taken from the description metadata field from OMERO).

The Expression and Cell identities files are required to show the histograms.
The Embeddings file is necessary to show the cells in a scatterplot. The Molecules file is used to overlay molecules on the image. All molecules are displayed and selecting by gene is not yet possible.
The Status panel will be empty unless a Segmentation or Embeddings are provided.

Attaching preexisting config files

Custom config files should have a .json extension and added as attachements to a dataset or an image. The configuration files does not need to refer to the dataset / image it is attached to and can refer to other images.

For how to create a custom config file see:

Serving the images / data /metadata

Images and data can be served through:

  • omero-web-zarr: OME-NGFF images only.
  • omero-openlink: all images and file attachements.
  • webclient/annotation/ endpoint: only for Annotations (useful for file attachments).

Development

Sources

The main sources are:

React web app

omero_vitessce web app

We serve a custom version of the vitesce app: http://vitessce.io/

The app sets up a vitessce view configured through a text file in json format: http://vitessce.io/docs/view-config-json/

The configuration file is taken from the ?config url parameter.

Installation

This project was created with Create React App.

You can run this project in development mode or as an OMERO.web Django app.

To get started:

$ cd vitessce_app
$ npm install

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.

The page will reload if you make edits.
You will also see any lint errors in the console.

npm run build

Builds the app for production to the build folder and copies the html and static files to the Django app in vitessce app. See the deploy_build.sh script.

You also need to install the app into your omero-web environment:

# cd to the root of the repo
$ pip install -e .

You will need to have the app configured in your OMERO.web install:

$ omero config append omero.web.apps '"omero_vitessce"'
$ omero config append omero.web.ui.right_plugins '["Vitessce", "omero_vitessce/webclient_plugins/right_plugin.vitessce.js.html", "vitessce_tab"]'
$ omero config set omero.web.omero_vitessce.serveraddress '"http://localhost:4080"'

It bundles React in production mode and optimizes the build for the best performance.

See the Create React App section about deployment for more information.

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

omero_vitessce-1.0.2.tar.gz (10.0 MB view details)

Uploaded Source

Built Distribution

omero_vitessce-1.0.2-py3-none-any.whl (10.1 MB view details)

Uploaded Python 3

File details

Details for the file omero_vitessce-1.0.2.tar.gz.

File metadata

  • Download URL: omero_vitessce-1.0.2.tar.gz
  • Upload date:
  • Size: 10.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.5

File hashes

Hashes for omero_vitessce-1.0.2.tar.gz
Algorithm Hash digest
SHA256 222081368f2e6baf9469154dd97ff1ce3ff6309c27edfd26e3307f96d028efed
MD5 ab28c4609e3962d87c024f6819cafb09
BLAKE2b-256 0d3a4811fb62ba46787870b6444c8896f6f290c2903bbaa497c980ee318f8adf

See more details on using hashes here.

Provenance

File details

Details for the file omero_vitessce-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for omero_vitessce-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bd6b295a8ec30069b159d643c13edbc4db0ba2ad17437a09596fbadb0878f539
MD5 539902dd69712fe02dd3baf399dbe1b1
BLAKE2b-256 566fa235d627bf33ad1c87c6ae1f44f89c27ca7cc76f6062d885d795b89205bd

See more details on using hashes here.

Provenance

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