VEuPathDB / web-components

Library of React components for plotting data
Apache License 2.0
1 stars 0 forks source link

Plots: longterm plan for webgl limitations imposed by browsers (Chromium) #273

Open dmfalke opened 2 years ago

dmfalke commented 2 years ago

Chromium browsers only allow 16 webgl contexts for a browser instance. This operates across all associated windows and tabs. We have been using the scattergl plotly type to render scatter plot data points, since it can handle a larger number than the svg implementation. When faceting is enabled, we can easily hit the upper limit of 16 webgl contexts, since we currently create individual plotly instance for each facet value. As a temporary solution, we switched to using the svg implementation when faceting is enabled. This is not optimal, since we may end up rendering too many points for the browser to handle with the svg implementation.

Also, in Firefox, at least, scatter point plots can mysteriously disappear from the page altogether if you leave a tab and come back after some time period. It's quite disconcerting!

We need to explore alternative, more robust solutions. Some possibilities that come to mind:

See related issues

alexcjohnson commented 2 years ago

@dmfalke we're investigating possible solutions to https://github.com/plotly/plotly.js/issues/2333 on behalf of a customer, but it's likely to be a big project so if VEuPathDB has any interest in co-sponsoring the work that would make it more likely to proceed. Please DM me alex@plot.ly if there's interest.

dmfalke commented 2 years ago

@alexcjohnson thank you for reaching out. I'm not sure we're equipped to co-sponsor. I will raise this with my supervisor and DM you if this is something we can do. Thanks again!