Skip to main content

OMERO.web plugin to test crossfilter

Project description

OMERO parade-crossfilter

This is a prototype OMERO.web app, exploring the use of https://github.com/crossfilter/crossfilter in a new implementation of https://github.com/ome/omero-parade.

It uses Create React App with the cross-filter, https://dc-js.github.io/dc.js/ and React interaction based on the blog post at https://www.lighttag.io/blog/react-dc-js/.

Questions to Answer

This prototype aims to investigate the scope and technical solutions for a data-visualization app based on omero-parade.

Limitations of the current omero-parade app include:

  • Data is tied to Images (in Dataset) or Wells (in Plate). Can't handle data linked to ROIS or to multiple Images in a Well.
  • Loads the same data from the server for filtering again for display.
  • Limited plots available (scatter plot only)

Particular questions:

  • Is crossfilter.js a suitable tool for filtering/grouping data? (A: mostly good)
  • What to use for Plots? (A: Plotly.js is looking pretty good)
  • How do we handle hierarchy of multiple Images per Well, or ROIs per Image?
  • How much data processing is possible, while still being usable / generic?
  • Is Parade primarily for exploring or presenting data (like figure)?

Install

This project is not yet available on Pypi. To install it, you need to checkout this repository, then:

$ cd parade-crossfilter
$ pip install .     # use -e if you wish to edit (dev)

To build the JS bundle, you'll need to have Node installed. Then install the JavaScript dependencies and build:

$ npm install
$ npm run build

This builds the app for production to the build folder and copies the html and static files to the Django app in parade_crossfilter.

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

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

The app will be run as an OMERO.web app at e.g. http://localhost:4080/parade_crossfilter/.

Add to 'open_with' config:

$ omero config append omero.web.open_with '["Parade", "parade_crossfilter_index", {"supported_objects": ["project", "screen"]}]'

Development

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

The notes below are largely from Create React App but have been updated with changes made to connect to OMERO in dev or production modes.

To get started:

$ cd parade-crossfilter
$ 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 app will try to connect to an OMERO.web server at http://localhost:4080 using an existing session.
You will need to be logged-in to http://localhost:4080/webclient.
To use a different server, edit dev_omeroweb_index in public/index.html.

Release

Run:

$ python setup.py sdist bdist_wheel

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

parade-crossfilter-0.0.1.tar.gz (36.1 MB view details)

Uploaded Source

Built Distribution

parade_crossfilter-0.0.1-py3-none-any.whl (36.5 MB view details)

Uploaded Python 3

File details

Details for the file parade-crossfilter-0.0.1.tar.gz.

File metadata

  • Download URL: parade-crossfilter-0.0.1.tar.gz
  • Upload date:
  • Size: 36.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2

File hashes

Hashes for parade-crossfilter-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a005f9c414353e4602941b19e97207d8a97108b7019782380b9e77672be1bbb8
MD5 362e09340d1f83f5a43f26fb61b4e6ee
BLAKE2b-256 5a93d7ae7e3bbe59b8ae5e94787178dc661f2a047a56c55212c02b2cbdb486dc

See more details on using hashes here.

File details

Details for the file parade_crossfilter-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: parade_crossfilter-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 36.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2

File hashes

Hashes for parade_crossfilter-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ba80261bcbed4d8c334543119c25539cf10c0530227a61f213469f88665c3c2
MD5 5a125024ca6b268a4f85f15175bc0d57
BLAKE2b-256 01c18dd4a2119d456598472d843d7761c416bc04a852b09ffdd7f27c63492e9e

See more details on using hashes here.

Supported by

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