diff --git a/src/traces/sunburst/calc.js b/src/traces/sunburst/calc.js index 35258a6ac13..ce37aa6b1f5 100644 --- a/src/traces/sunburst/calc.js +++ b/src/traces/sunburst/calc.js @@ -17,6 +17,8 @@ var makePullColorFn = require('../pie/calc').makePullColorFn; var generateExtendedColors = require('../pie/calc').generateExtendedColors; var colorscaleCalc = require('../../components/colorscale').calc; +var ALMOST_EQUAL = require('../../constants/numerical').ALMOST_EQUAL; + var sunburstExtendedColorWays = {}; var treemapExtendedColorWays = {}; @@ -165,7 +167,7 @@ exports.calc = function(gd, trace) { v = partialSum; } - if(v < partialSum) { + if(v < partialSum * ALMOST_EQUAL) { failed = true; return Lib.warn([ 'Total value for node', d.data.data.id, diff --git a/test/image/baselines/sunburst_branchvalues-total-almost-equal.png b/test/image/baselines/sunburst_branchvalues-total-almost-equal.png new file mode 100644 index 00000000000..e571e95608b Binary files /dev/null and b/test/image/baselines/sunburst_branchvalues-total-almost-equal.png differ diff --git a/test/image/mocks/sunburst_branchvalues-total-almost-equal.json b/test/image/mocks/sunburst_branchvalues-total-almost-equal.json new file mode 100644 index 00000000000..0dffc115a09 --- /dev/null +++ b/test/image/mocks/sunburst_branchvalues-total-almost-equal.json @@ -0,0 +1,422 @@ +{ + "data": [ + { + "type": "sunburst", + "branchvalues": "total", + "ids": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100 + ], + "labels": [ + 50.61396886367823, + 0.1508032947706649, + 0.144772419857929, + 0.6828382849784108, + 0.7303325127961987, + 0.858876022783749, + 0.9911065836594353, + 0.8195834015292538, + 0.9805488749125854, + 0.9293246413144315, + 0.07054158264514998, + 0.29368958966985614, + 0.8498277014623231, + 0.9912091059808262, + 0.8516745041526752, + 0.9247973801541135, + 0.49075327851919615, + 0.8330502026409881, + 0.1250744471149431, + 0.32165457121839147, + 0.15483971188397683, + 0.8222907332095897, + 0.8716861710229372, + 0.6143068818728264, + 0.4092862532682796, + 0.23574082313346456, + 0.36184095176266295, + 0.6048462895467484, + 0.6141923661172606, + 0.4171841557522099, + 0.3039718587416017, + 0.3738311111382461, + 0.5847488104727093, + 0.33333410492437276, + 0.8955065769206499, + 0.5662242370372644, + 0.6489309357317309, + 0.42003855517450417, + 0.1307469266386645, + 0.9889928568791247, + 0.9241734813204155, + 0.40286074110294934, + 0.1317380336479913, + 0.7606389376522231, + 0.2784829734326385, + 0.9424312133795445, + 0.49943431660657844, + 0.8936597290873225, + 0.6813711778209328, + 0.28021055757939917, + 0.8001035761842283, + 0.21026934042590673, + 0.12864980739984289, + 0.6543520418087014, + 0.4261609379403105, + 0.6880034995121016, + 0.18841870677896888, + 0.6484000596790865, + 0.978867598026709, + 0.6587962255849874, + 0.36668425416397854, + 0.9397393305060024, + 0.22924794821837824, + 0.5825381102182002, + 0.07839725332205871, + 0.2694737800356217, + 0.7144918554266293, + 0.7520418734205495, + 0.9682225530402179, + 0.6573193203933488, + 0.4618944200773475, + 0.9999795432348461, + 0.7887902627424809, + 0.08491471699688735, + 0.30147246155269125, + 0.2517860316794369, + 0.3046278216357763, + 0.5118724673227546, + 0.3066757602824012, + 0.9004913722481603, + 0.16237862405267123, + 0.569001669317542, + 0.49815001708940254, + 0.23567995725302449, + 0.8744630207649886, + 0.8229250175372639, + 0.3603024496085788, + 0.11076311137768857, + 0.9811401057406824, + 0.11079420444524224, + 0.011904766198466366, + 0.2772350574054111, + 0.03253473992078881, + 0.34379500895774817, + 0.32103263217344813, + 0.06692066585125911, + 0.047490033173335, + 0.37387805573405997, + 0.1883278781327783, + 0.09246394286542858, + 0.09210510319986587 + ], + "parents": [ + null, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "values": [ + 50.61396886367823, + 0.1508032947706649, + 0.144772419857929, + 0.6828382849784108, + 0.7303325127961987, + 0.858876022783749, + 0.9911065836594353, + 0.8195834015292538, + 0.9805488749125854, + 0.9293246413144315, + 0.07054158264514998, + 0.29368958966985614, + 0.8498277014623231, + 0.9912091059808262, + 0.8516745041526752, + 0.9247973801541135, + 0.49075327851919615, + 0.8330502026409881, + 0.1250744471149431, + 0.32165457121839147, + 0.15483971188397683, + 0.8222907332095897, + 0.8716861710229372, + 0.6143068818728264, + 0.4092862532682796, + 0.23574082313346456, + 0.36184095176266295, + 0.6048462895467484, + 0.6141923661172606, + 0.4171841557522099, + 0.3039718587416017, + 0.3738311111382461, + 0.5847488104727093, + 0.33333410492437276, + 0.8955065769206499, + 0.5662242370372644, + 0.6489309357317309, + 0.42003855517450417, + 0.1307469266386645, + 0.9889928568791247, + 0.9241734813204155, + 0.40286074110294934, + 0.1317380336479913, + 0.7606389376522231, + 0.2784829734326385, + 0.9424312133795445, + 0.49943431660657844, + 0.8936597290873225, + 0.6813711778209328, + 0.28021055757939917, + 0.8001035761842283, + 0.21026934042590673, + 0.12864980739984289, + 0.6543520418087014, + 0.4261609379403105, + 0.6880034995121016, + 0.18841870677896888, + 0.6484000596790865, + 0.978867598026709, + 0.6587962255849874, + 0.36668425416397854, + 0.9397393305060024, + 0.22924794821837824, + 0.5825381102182002, + 0.07839725332205871, + 0.2694737800356217, + 0.7144918554266293, + 0.7520418734205495, + 0.9682225530402179, + 0.6573193203933488, + 0.4618944200773475, + 0.9999795432348461, + 0.7887902627424809, + 0.08491471699688735, + 0.30147246155269125, + 0.2517860316794369, + 0.3046278216357763, + 0.5118724673227546, + 0.3066757602824012, + 0.9004913722481603, + 0.16237862405267123, + 0.569001669317542, + 0.49815001708940254, + 0.23567995725302449, + 0.8744630207649886, + 0.8229250175372639, + 0.3603024496085788, + 0.11076311137768857, + 0.9811401057406824, + 0.11079420444524224, + 0.011904766198466366, + 0.2772350574054111, + 0.03253473992078881, + 0.34379500895774817, + 0.32103263217344813, + 0.06692066585125911, + 0.047490033173335, + 0.37387805573405997, + 0.1883278781327783, + 0.09246394286542858, + 0.09210510319986587 + ] + } + ], + "layout": { + } +}