Before getting merged into the main plotly.js dist bundle, we need to make sure following problems are addressed
heatmapgl test-images are not reproducible. Maybe this is just a matter of bumping the gl-shader requirement.
NaNs correctly. One good test would be to Plotly.restyle(gd, 'type', 'heatmapgl') all our heatmap test mocks.gl2d version (instead of simply copying the heatmap attributes). For example, heatmapgl doesn't support zsmooth, xgap and ygap.See the heatmapgl-primetime branch for more some WIP work.
Maybe @dfcreative would be interested in looking some of the items :arrow_double_up: ?
cc @monfera @jackparmer
Sure!
That would be awesome @dfcreative ! Want to come by the office for lunch this Friday?
@jackparmer sure!
Ok, as for
top-most and right-most points aren't being catch
that seems to be wrongly rendered pickBuffer:

only 9 levels out of 10 are here. It does not contain ids >= 90 and whole decimals 10, 20, 30, 40, 50, 60, 70, 80, which refer to the last row/col
test-images are not reproducible
All the difference I see across all the heatmap tests is in fonts rendering and antialiasing
original:


result:


Can it be the reason of failing tests @etpinard?
@dfcreative It's similar to https://github.com/plotly/streambed/issues/6307#issuecomment-231818023
Generating one heatmapgl mock at a time works fine. But inside a loop, image generation is off.
Ok, the problem of top-right points is in this line, which ignores edge vertices. It is easily fixable for the x axis by adding dx, but difficult for the y axis, because pick shader interpolates value.
A fact that pickBuffer in some magic way transforms float array of ids into vec4s of ints adds to the complexity of issue.
Ok, top-most and right-most picking problem should be fixed by https://github.com/gl-vis/gl-heatmap2d/pull/2
Hey @dfcreative - Do you have an idea for this one by chance?
heatmapgl test-images are not reproducible. Maybe this is just a matter of bumping the gl-shader requirement.
What do you think is your timeline for the other 2?
@jackparmer all heatmap related tests are reproduced fine on my machine, I guess I should discuss that with @etpinard this friday, to see the issue in action to understand what's wrong.
@etpinard ok, last https://github.com/gl-vis/gl-heatmap2d/pull/2 should fix the images/picking issues
@dfcreative nice job. Your patch even works on CI:

The first two items are :white_check_mark:
Oh. I spoke too soon. Picking is still broken for a few other mocks.
For example, Earth_heatmap when replace data[0].type from 'heatmap' to 'heatmapgl':

Same story for the 4 mock:

@etpinard https://github.com/gl-vis/gl-heatmap2d/pull/2/commits/04cae767bf14444fe236369011e1c414509ea533 should fix picking, tested on various mocks. My render of 4.json is different though, I guess because of custom layout options
. Should it be fixed?
@dfcreative thanks! I'll give it a test :car: on Monday.
@dfcreative with your last commit, this is looking really good. I'll spend a few more minutes double-checking, but looks like we're really to something mergeable. :beers:
Most helpful comment
Ok, as for
that seems to be wrongly rendered

pickBuffer:only 9 levels out of 10 are here. It does not contain ids >= 90 and whole decimals 10, 20, 30, 40, 50, 60, 70, 80, which refer to the last row/col