Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gl2d known limitations #130

Open
etpinard opened this Issue Dec 17, 2015 · 12 comments

Comments

Projects
None yet
5 participants
@etpinard
Copy link
Member

etpinard commented Dec 17, 2015

A list of known limitations in gl2d graphs in comparison with svg2d feature set:

  • image export isn't reliable (meaning gl2d graphs have no image test support)
  • scatter mode: 'text' (for text charts) is not available
  • 'free' axes and 'overlaying' axes are not available. But subplots, insets, shared axes work. Hurdles: free axes with custom 'position' would need an option to make a gap between the data-box and the axis in gl-plot2d, overlaying axes would need more logic around when to show grid lines, scene backgroud color and have hover events propagate down. Fixed with regl.
  • data-reference annotations/shapes are not available (paper-reference annotations/shapes work)
  • fill options tonexty, tonexty, and toself are not avaliable (tozerox and tozeroy work) Fixed with regl.
  • the marker.symbol is pretty good since v1.28.0 but not on-par with svg Fixed with regl.
  • px-specified line.dash are not available
  • no line.shape: 'spline' update: 'hv', 'vh', 'hvh', 'vhv' added in #3087
  • axis titles are not centered (positioning algo does not consider text width)
  • tick marks don't support \n (most common in date axes)
  • axes don't support decreasing (custom or with autorange: 'reversed') ranges. Fixed with regl.
  • hovermode x and y are not available (toggling hover on/off in modebar works). Fixed with regl.
  • no support for axis fixedrange (would need to tweak gl-select-box). Fixed with regl.
  • double click and shift click interactions are not supported. Fixed with regl.
  • cartesian + gl2d subplot on the same graph are not supported. Fixed with regl.
  • plotly_hover, plotly_unhover and plotly_click are not emitted [done in #994]
  • setting hoverinfo to 'none' should disable the hover spikes. Fixed with regl.
  • a hover spikes sometimes appears prematurely after initial Plotly.plot call
  • select box and lasso selections are not supported
  • single-axis zoom/pan and corner zoom interactions are not supported
  • zoom-box doesn't follow cursor outside the plot bounds (i.e. no cover slip). Fixed with regl.

@etpinard etpinard added this to the On-par gl2d milestone Dec 18, 2015

@etpinard etpinard referenced this issue Jan 13, 2017

Merged

gl2d data-referenced annotations #1301

1 of 1 task complete
@destradafilm

This comment has been minimized.

Copy link

destradafilm commented May 26, 2017

can you also include ADD d3 events to plotly_click plotly_hover plotly_unhover events? Same as non webgl version?

@mx2048

This comment has been minimized.

Copy link

mx2048 commented Dec 1, 2017

Also, no support for tags as to Scattergl.
For example,
layout = go.Layout(xaxis=dict(title='<b>Title</b>'))
Title will not appear if enclosed in the tags.

@cpsievert cpsievert referenced this issue Dec 5, 2017

Closed

regl-scatter2d #1869

42 of 52 tasks complete
@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 8, 2018

can you also include ADD d3 events to plotly_click plotly_hover plotly_unhover events? Same as non webgl version?

Also, no support for tags as to Scattergl.
For example,
layout = go.Layout(xaxis=dict(title='Title'))
Title will not appear if enclosed in the tags.

Both will be fixed by @dfcreative 's regl-based scattergl.

@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 8, 2018

@dfcreative quick question: is your implementation of line.dash on-par with SVG scatter?

@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 8, 2018

... if so, the only remaining items in the list above are:

  • scatter mode: 'text' (for text charts) is not available DONE in #2737
  • no line.shape: 'spline' now in -> #3229

pretty good 🎉

@dy

This comment has been minimized.

Copy link
Member

dy commented Jan 13, 2018

@etpinard dashes are not perfectly the same px-wise, but cover all SVG modes.

@dy

This comment has been minimized.

Copy link
Member

dy commented Jan 16, 2018

@etpinard dash patterns are covered by dd120ee:
image

@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 17, 2018

A few more things that scattergl doesn't do quite right as of #2258:

  • hoveron: 'fills' now in -> #2887
  • axis.layer
  • trace cliponaxis
  • hover label coloring is off for traces with a marker.colorscale now in -> #2953
@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 18, 2018

Writing down a couple more thoughts on future gl2d development. Some of these items may benefit from Github issue of their own down the road.

  • In a private convo, @dfcreative wrote: _merge snap-points-2d/kdtree to point-cluster DONE during the splom push
  • make tree-based selection subrange)_ for improved performances
  • better auto-range solution for gl2d. The SVG solution doesn't scale well to 1e6, but it would be nice to make scatter and scattergl use the same set of rules e.g. we could say: for graphs with more than 1e5 don't consider marker.size in auto-range computation. DONE in #2404
  • Update pointcloud to using regl. Better yet, merge pointcloud fast data pass into a scattergl mode to allows fast updates.
  • What to do with heatmapgl and contourgl? Canvas-based heatmap is currently out-performing heatmapgl in the latest Chrome version. contourgl is full of bugs and offers little to no benefits compare to svg contour. Perhaps we should just deprecate them.
@etpinard

This comment has been minimized.

Copy link
Member Author

etpinard commented Jan 18, 2018

@dfcreative 's new regl-based scattergl was merged in #2258 and released in v1.33.0. We'll leave this issue open as a starting point to discuss future gl2d development, but we'll close off the On-par gl2d.

@etpinard etpinard removed this from the On-par gl2d milestone Jan 18, 2018

@cpsievert

This comment has been minimized.

Copy link

cpsievert commented Feb 12, 2018

Not sure if y'all group scattermapbox under this category, but I would to see that support hoveron='fill' as well!

@cpsievert

This comment has been minimized.

Copy link

cpsievert commented Apr 9, 2018

Also rangeslider:

https://codepen.io/cpsievert/pen/JLwQyx

Edit: in -> #2627

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.