From 1a13e0c987d9c4b07c0c01225bb8d5e2dd829f66 Mon Sep 17 00:00:00 2001 From: archmoj Date: Tue, 8 Dec 2020 15:53:46 -0500 Subject: [PATCH 1/2] fix issue 5328 - pick trace root color --- src/traces/sunburst/calc.js | 4 +- test/image/baselines/treemap_root-color.png | Bin 0 -> 9542 bytes test/image/mocks/treemap_root-color.json | 96 ++++++++++++++++++++ test/jasmine/tests/mock_test.js | 2 + 4 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 test/image/baselines/treemap_root-color.png create mode 100644 test/image/mocks/treemap_root-color.json diff --git a/src/traces/sunburst/calc.js b/src/traces/sunburst/calc.js index 58eab8ffae0..0442d664de0 100644 --- a/src/traces/sunburst/calc.js +++ b/src/traces/sunburst/calc.js @@ -258,6 +258,7 @@ exports._runCrossTraceCalc = function(desiredType, gd) { } var dfltColorCount = 0; + var rootColor; function pickColor(d) { var cdi = d.data.data; var id = cdi.id; @@ -277,7 +278,7 @@ exports._runCrossTraceCalc = function(desiredType, gd) { } } else { // set root color. no coloring by default. - cdi.color = cdi.trace.root.color; + cdi.color = rootColor; } } } @@ -286,6 +287,7 @@ exports._runCrossTraceCalc = function(desiredType, gd) { var cd = calcdata[i]; var cd0 = cd[0]; if(cd0.trace.type === desiredType && cd0.hierarchy) { + rootColor = cd0.trace.root.color; cd0.hierarchy.each(pickColor); } } diff --git a/test/image/baselines/treemap_root-color.png b/test/image/baselines/treemap_root-color.png new file mode 100644 index 0000000000000000000000000000000000000000..931652467502261feb8570806ad593c18843e52c GIT binary patch literal 9542 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 z$x0db$)fvsales=%{value}
parent=%{parent}
id=%{id}", + "ids": [ + "all/North/Tech/A", + "all/North/Tech/B", + "all/North/Finance/C", + "all/North/Finance/D", + "all/South/Tech/E", + "all/South/Tech/F", + "all/South/Finance/G", + "all/South/Finance/H", + "all/North/Finance", + "all/South/Finance", + "all/North/Other", + "all/South/Other", + "all/North/Tech", + "all/South/Tech", + "all/North", + "all/South", + "all" + ], + "labels": [ + "A", + "B", + "C", + "D", + "E", + "F", + "G", + "H", + "Finance", + "Finance", + "Other", + "Other", + "Tech", + "Tech", + "North", + "South", + "all" + ], + "name": "", + "parents": [ + "all/North/Tech", + "all/North/Tech", + "all/North/Finance", + "all/North/Finance", + "all/South/Tech", + "all/South/Tech", + "all/South/Finance", + "all/South/Finance", + "all/North", + "all/South", + "all/North", + "all/South", + "all/North", + "all/South", + "all", + "all", + "" + ], + "type": "treemap", + "branchvalues": "total", + "values": [ + 1, + 3, + 2, + 4, + 2, + 2, + 1, + 4, + 6, + 5, + 1, + 1, + 4, + 4, + 11, + 10, + 21 + ] + } + ], + "layout": { + "width": 320, + "height": 200, + "margin": { + "t": 20, + "l": 20, + "r": 20, + "b": 20 + } + } +} diff --git a/test/jasmine/tests/mock_test.js b/test/jasmine/tests/mock_test.js index e619d5dabe3..8399be37577 100644 --- a/test/jasmine/tests/mock_test.js +++ b/test/jasmine/tests/mock_test.js @@ -989,6 +989,7 @@ var list = [ 'treemap_packings', 'treemap_pad_mirror', 'treemap_pad_transpose', + 'treemap_root-color', 'treemap_sunburst_basic', 'treemap_sunburst_marker_colors', 'treemap_textfit', @@ -2077,6 +2078,7 @@ figs['treemap_packages_colorscale_novalue'] = require('@mocks/treemap_packages_c figs['treemap_packings'] = require('@mocks/treemap_packings'); figs['treemap_pad_mirror'] = require('@mocks/treemap_pad_mirror'); figs['treemap_pad_transpose'] = require('@mocks/treemap_pad_transpose'); +figs['treemap_root-color'] = require('@mocks/treemap_root-color'); figs['treemap_sunburst_basic'] = require('@mocks/treemap_sunburst_basic'); figs['treemap_sunburst_marker_colors'] = require('@mocks/treemap_sunburst_marker_colors'); figs['treemap_textfit'] = require('@mocks/treemap_textfit'); From 085064eb89539be941de9549ef6bfe3827785683 Mon Sep 17 00:00:00 2001 From: archmoj Date: Tue, 8 Dec 2020 16:10:08 -0500 Subject: [PATCH 2/2] update flaky list --- test/image/compare_pixels_test.js | 1 + 1 file changed, 1 insertion(+) diff --git a/test/image/compare_pixels_test.js b/test/image/compare_pixels_test.js index 93ec06d83fc..9ec29d774ae 100644 --- a/test/image/compare_pixels_test.js +++ b/test/image/compare_pixels_test.js @@ -102,6 +102,7 @@ if(allMock || argv.filter) { var FLAKY_LIST = [ 'treemap_coffee', + 'treemap_sunburst_marker_colors', 'treemap_textposition', 'treemap_with-without_values', 'gl3d_directions-streamtube1',