Conversation
…p - avoid casting int to float - reduce argument passing - etc
… attribute xyProjection - etc
…tween shader functions
…king before glAes call
remove parcoords high & low limit tweakings
src/traces/parcoords/parcoords.js
Outdated
| }; | ||
| } | ||
|
|
||
| function calcTilt(angle) { |
There was a problem hiding this comment.
How does this look like for multi-line labels?
Cartesian labels have this:
plotly.js/src/plots/cartesian/axes.js
Lines 2482 to 2489 in 0690162
There was a problem hiding this comment.
There was a problem hiding this comment.
For the moment the labels are positioned using the first line.
This is pretty cool! I may give that a try on this PR.
| "dimensions": [ | ||
| { | ||
| "label": "$\\varphi ={\\frac {1+{\\sqrt {5}}}{2}}$", | ||
| "label": "<i>Rien ne se perd,<br>rien ne se crée,<br>tout se <b>transforme</b>.</i><sub>", |
There was a problem hiding this comment.
Hmm. So parcoords trace with MathJax text don't render ok on CI?
There was a problem hiding this comment.
Actually they do render on the CI. But I noticed the mock often fails locally when testing multiple parcoords. By the way there could be an issue with a callback required for MathJax.
There was a problem hiding this comment.
Hmm. That's weird. Looks like you're using convertToTspans correctly - which should be filling in gd._promises.
I suspect the problem is in here:
plotly.js/src/traces/parcoords/base_plot.js
Lines 35 to 67 in 795220f
src/traces/parcoords/parcoords.js
Outdated
| null) | ||
| .tickFormat(d.ordinal ? function(d) { return d; } : function(d) { return linearFormat(d); }) | ||
| .tickFormat(function(v) { | ||
| return d.ordinal ? v : linearFormat(v, d.tickFormat); |
There was a problem hiding this comment.
@archmoj I'm a little concerned with the image diff for gl2d_parcoords_rgba_colorscale
I don't understand why those m suffixes are now showing up.
There was a problem hiding this comment.
The default is 3s not .3s
plotly.js/src/traces/parcoords/attributes.js
Lines 56 to 58 in 795220f
Does that make sense?
There was a problem hiding this comment.
Ah, well there's nothing wrong with your code:
(using http://bl.ocks.org/zanarmstrong/05c1e95bf7aa16c4768e)
I'm not sure what the m stands for here though.
Maybe it's time to ditch the (bad) tickformat default altogether.
@archmoj can you generate try re-generating all the parcoords baselines w/o that tickformat default on a separate branch?
There was a problem hiding this comment.
m==milli - but yeah, we shouldn't use that by default - 0.003 is much better than 3m. If we use the Axes.tickText default formatting it skips milli but does use all the other SI prefixes.
…t default to be on par with cartesian axes
| }); | ||
|
|
||
| it('@gl preserves editable: true name, colorbar title and parcoords constraint range via trace.uirevision', function(done) { | ||
| it('@noCI @gl preserves editable: true name, colorbar title and parcoords constraint range via trace.uirevision', function(done) { |
There was a problem hiding this comment.
This one bothers me. Let's spend some time to try find out why it fails now.
|
Awesome work @archmoj The only blocking item keeping this PR from getting merged in that new I'll see if I can figure that mystery out. |
|
💃 -- a new |




Refactoring
parcoordscode helped fixing:#3794
#3946
Reusing Cartesian axes
tickTextfunction for linear axes (parcoordshas linear and ordinal axis types)#3930
Support for pseudo-html and MathJax formatting in
parcoordsdimension labels#3206
And label line breaks useful for:
https://github.com/plotly/phoenix-integration/issues/242
Also two new attributes are added at trace data level to help control the angle and position of labels
The 3 vertex shader programs as well as 2 helper functions are all combined in one vertex shader & optimised.
Also to mention low precision flag in fragment shader is replaced by high precision flag for better output on different devices.
To investigate performance benchmarks please visit the examples below and find the console.logs after refresh!
1050ms codepen 1 before
0700ms codepen 1 after
codepen 2 before
codepen 2 after
@plotly/plotly_js