What problem is HiGlass trying to solve?
Chromosome shape is not just a blobby “X”!
How do we show the “distance” between every point in the genome, at once?
from: guestnewzealand.com
from: higlass.io
Linked, zoomable contact matrices
These two are linked: zoom or pan one, and the other keeps up
Configurable 1-dimensional data tracks
Drag to rearrange, and save your view
Hit “+” to add new tracks, or new panels
Current zoom shown in context
Orders of magnitude: scale adjusts to what is in view
Image tiling won’t work: we need data tiling.
What problems is Vitessce trying to solve?
Part of HuBMAP
How do we bring together:
Scatterplots and heatmaps aren’t new, but how should we handle cells + molecules + imagery?
It’s a bit like a GIS…
(and down the road, spatial analysis?)
We settled on Deck.gl (from Uber):
(Kepler.gl is another tool from Uber,
which builds on top: ties components into application.)
PolygonLayer
Only 4000; We did simplify hulls
ScatterplotLayer
2 million points
CompositeLayer
Doesn’t provide selection out-of-the-box
TextLayer
Does not avoid overlap
GPUGridLayer
Aggregates data points on GPU
TileLayer
Only works with geographic data
Deck.gl geographic assumptions
→ TODO: Try again with v7.0.
→ No way to specify a base with arbitrary bounds.
→ Deck.gl passes {x, y, w, h} to child components.
So, what should we use for imagery?
(Still under discussion!)
We like HiGlass… but maybe plain image tiling can work here? OpenSeadragon is a popular library.
The Higlass application is great for genomic data, and its handling of high dynamic range data is distinctive, but:
OpenSeadragon possibilities
With plugin, map colors (Limited to 256)
var viewer = new OpenSeadragon.Viewer(...);
viewer.setFilterOptions({
filters: {
processors: OpenSeadragon.Filters.COLORMAP(
[[0, 0, 0],
[0, 240, 0],
[0, 255, 0]],
128)}});
Combine channels? demo
Filters: demo
Thank you, Internet:
React
react-grid-layout
PubSubJS
Karma
Mocha
Expect
PhantomJS
(and everything else they built on top of…)
CodeSandbox
Thank you, people:
… and collaborators, and everyone at DBMI@HMS
Your turn! This page is tiny.cc/2019-vis
(On codesandbox.io, click and then go live to collaborate with others.)
Talk with each other, or ask me questions. Thanks! |