Skip to content

Preserving 64 bit floats for WebGL 2D plotting - #1033

Merged
etpinard merged 7 commits into
plotly:masterfrom
monfera:date-resolution-3
Oct 26, 2016
Merged

Preserving 64 bit floats for WebGL 2D plotting#1033
etpinard merged 7 commits into
plotly:masterfrom
monfera:date-resolution-3

Conversation

@monfera

@monferamonfera commented Oct 13, 2016

Copy link
Copy Markdown
Contributor

Solution for #995

Rebased on #413 to allow testing with a date axis.

For non-fancy scattergl, this is also needed: gl-vis/gl-scatter2d#1

For fancy scattergl, this is also needed:

@etpinardetpinard added this to the v1.19.0 milestone Oct 13, 2016

@etpinardetpinard left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice solution. Looking forward to this once #995 is complete 👍

var float32ArrayOut = new Float32Array(len);
for(var i = 0; i < len; i++) float32ArrayOut[i] = float32ArrayIn[i];
return float32ArrayOut;
module.exports = function truncate(arrayIn, len) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nicely done here.

Let's change the file name though to typed_array_truncate.js (or something better?))

@monfera
monferaforce-pushed the date-resolution-3 branch 3 times, most recently from a7b2249 to 066f45dCompareOctober 21, 2016 20:30
@monferamonfera changed the title [WIP] Preserving 64 bit floats for WebGL 2D plottingPreserving 64 bit floats for WebGL 2D plottingOct 25, 2016
@etpinard

etpinard commented Oct 25, 2016

Copy link
Copy Markdown
Contributor

@monfera amazing work 🎉

I've been playing with gl2d plots in the test dashboard for about 30 minutes now and I can't find any regressions.

Go ahead and merge + publish all the gl-vis PRs. Once that's done, you'll need to rebase off master for the gl2d image tests to pass on CircleCI (post #1067).

Then, we should modify the existing gl2d_date_axes mock and update its baseline to showcase the new high-precision logic.

Thanks again for your efforts 👍

@monfera

Copy link
Copy Markdown
ContributorAuthor

@etpinard all the above steps are now done except the update to gl2d_date_axes.json. Now it uses a daily raster. Should I just change it to a millisecond raster, and also add some points for around 1970 (for testing that it can do milliseconds even if the temporal domain of the data spans decades)?

@etpinard

Copy link
Copy Markdown
Contributor

Should I just change it to a millisecond raster, and also add some points for around 1970 (for testing that it can do milliseconds even if the temporal domain of the data spans decades)?

yes please!

@etpinard

Copy link
Copy Markdown
Contributor

@monfera looks like the updated gl2d dates mock failed to generate on CircleCI - see here.

I wonder if CircleCi doesn't like Float64Arrays - which may be bad news for plot.ly's image server ...

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugsomething broken

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@monfera@etpinard