Skip to content

Commit e7e22c6

Browse files
committed
texttemplate and hovertemplate fixes
1 parent 1de80d9 commit e7e22c6

File tree

7 files changed

+29
-16
lines changed

7 files changed

+29
-16
lines changed

src/traces/sunburst/fx.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ var helpers = require('./helpers');
1919
var pieHelpers = require('../pie/helpers');
2020

2121
var formatValue = pieHelpers.formatPieValue;
22-
var formatPercent = pieHelpers.formatPiePercent;
2322

2423
module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
2524
var cd0 = cd[0];
@@ -109,7 +108,7 @@ module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
109108
hoverPt.percentParent = pt.percentParent = val / getVal(ref2);
110109
hoverPt.parent = pt.parent = helpers.getLabelString(ref2.data.data.label);
111110
if(hasFlag('percent parent')) {
112-
tx = formatPercent(hoverPt.percentParent, separators) + ' of ' + hoverPt.parent;
111+
tx = helpers.formatPercent(hoverPt.percentParent, separators) + ' of ' + hoverPt.parent;
113112
insertPercent();
114113
}
115114
}
@@ -119,7 +118,7 @@ module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
119118
hoverPt.percentVisible = pt.percentVisible = val / getVal(ref1);
120119
hoverPt.visible = pt.visible = helpers.getLabelString(ref1.data.data.label);
121120
if(hasFlag('percent visible')) {
122-
tx = formatPercent(hoverPt.percentVisible, separators) + ' of ' + hoverPt.visible;
121+
tx = helpers.formatPercent(hoverPt.percentVisible, separators) + ' of ' + hoverPt.visible;
123122
insertPercent();
124123
}
125124
}
@@ -129,7 +128,7 @@ module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
129128
hoverPt.percentRoot = pt.percentRoot = val / getVal(ref0);
130129
hoverPt.root = pt.root = helpers.getLabelString(ref0.data.data.label);
131130
if(hasFlag('percent root')) {
132-
tx = formatPercent(hoverPt.percentRoot, separators) + ' of ' + hoverPt.root;
131+
tx = helpers.formatPercent(hoverPt.percentRoot, separators) + ' of ' + hoverPt.root;
133132
insertPercent();
134133
}
135134
}

src/traces/sunburst/helpers.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
var Lib = require('../../lib');
1212
var Color = require('../../components/color');
1313
var setCursor = require('../../lib/setcursor');
14+
var pieHelpers = require('../pie/helpers');
1415

1516
function hasLabel(label) {
1617
return label || label === 0;
@@ -160,3 +161,12 @@ exports.listPath = function(d, keyStr) {
160161
exports.getPath = function(d) {
161162
return exports.listPath(d, 'label').join('/') + '/';
162163
};
164+
165+
exports.formatValue = pieHelpers.formatPieValue;
166+
167+
// TODO: should combine the two in a separate PR - Also please note Lib.formatPercent should support separators.
168+
exports.formatPercent = function(v, separators) {
169+
var tx = Lib.formatPercent(v, 0); // use funnel(area) version
170+
if(tx === '0%') tx = pieHelpers.formatPiePercent(v, separators); // use pie version
171+
return tx;
172+
};

src/traces/sunburst/plot.js

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,6 @@ var attachFxHandlers = require('./fx');
2222
var constants = require('./constants');
2323
var helpers = require('./helpers');
2424

25-
var pieHelpers = require('../pie/helpers');
26-
var formatValue = pieHelpers.formatPieValue;
27-
var formatPercent = pieHelpers.formatPiePercent;
28-
2925
exports.plot = function(gd, cdmodule, transitionOpts, makeOnCompleteCallback) {
3026
var fullLayout = gd._fullLayout;
3127
var layer = fullLayout._sunburstlayer;
@@ -514,7 +510,7 @@ exports.formatSliceLabel = function(pt, entry, trace, cd, fullLayout) {
514510
}
515511

516512
if(cdi.hasOwnProperty('v') && hasFlag('value')) {
517-
thisText.push(formatValue(cdi.v, separators));
513+
thisText.push(helpers.formatValue(cdi.v, separators));
518514
}
519515

520516
if(hasFlag('current path')) {
@@ -530,8 +526,7 @@ exports.formatSliceLabel = function(pt, entry, trace, cd, fullLayout) {
530526
if(nPercent) {
531527
var percent;
532528
var addPercent = function(key) {
533-
tx = Lib.formatPercent(percent, 0); // use funnel(area) version
534-
if(tx === '0%') tx = formatPercent(percent, separators); // use pie version
529+
tx = helpers.formatPercent(percent, separators);
535530

536531
if(hasMultiplePercents) tx += ' of ' + key + ' ';
537532
thisText.push(tx);
@@ -570,23 +565,32 @@ exports.formatSliceLabel = function(pt, entry, trace, cd, fullLayout) {
570565
if(cdi.label) obj.label = cdi.label;
571566
if(cdi.hasOwnProperty('v')) {
572567
obj.value = cdi.v;
573-
obj.valueLabel = formatValue(cdi.v, separators);
568+
obj.valueLabel = helpers.formatValue(cdi.v, separators);
574569
}
575570

576571
obj.currentPath = helpers.getPath(pt.data);
577572

578573
if(pt.parent) {
579574
ref = pt.parent;
580575
obj.percentParent = calcPercent();
576+
obj.percentParentLabel = helpers.formatPercent(
577+
obj.percentParent, separators
578+
);
581579
obj.parent = ref.data.data.label;
582580
}
583581

584582
ref = entry;
585583
obj.percentVisible = calcPercent();
584+
obj.percentVisibleLabel = helpers.formatPercent(
585+
obj.percentVisible, separators
586+
);
586587
obj.visible = ref.data.data.label;
587588

588589
ref = hierarchy;
589590
obj.percentRoot = calcPercent();
591+
obj.percentRootLabel = helpers.formatPercent(
592+
obj.percentRoot, separators
593+
);
590594
obj.root = ref.data.data.label;
591595

592596
if(cdi.hasOwnProperty('color')) {
7.89 KB
Loading
3.88 KB
Loading

test/jasmine/tests/sunburst_test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@ describe('Test sunburst hover:', function() {
404404
pos: 4,
405405
exp: {
406406
label: {
407-
nums: 'Abel\nEve/\n16.7% of Eve\n6',
407+
nums: 'Abel\nEve/\n17% of Eve\n6',
408408
name: 'trace 0'
409409
},
410410
ptData: {
@@ -423,7 +423,7 @@ describe('Test sunburst hover:', function() {
423423
pos: 4,
424424
exp: {
425425
label: {
426-
nums: 'Abel\nEve/\n16.7% of Eve',
426+
nums: 'Abel\nEve/\n17% of Eve',
427427
name: 't...'
428428
},
429429
ptData: {

test/jasmine/tests/treemap_test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ describe('Test treemap hover:', function() {
509509
pos: 4,
510510
exp: {
511511
label: {
512-
nums: 'Abel\nEve/\n16.7% of Eve\n6',
512+
nums: 'Abel\nEve/\n17% of Eve\n6',
513513
name: 'trace 0'
514514
},
515515
ptData: {
@@ -528,7 +528,7 @@ describe('Test treemap hover:', function() {
528528
pos: 4,
529529
exp: {
530530
label: {
531-
nums: 'Abel\nEve/\n16.7% of Eve',
531+
nums: 'Abel\nEve/\n17% of Eve',
532532
name: 't...'
533533
},
534534
ptData: {

0 commit comments

Comments
 (0)