Skip to content

Commit ea3a90f

Browse files
committed
fill aLabel, bLabel and cLabel during scatterternary hover
1 parent 8e8670d commit ea3a90f

File tree

2 files changed

+12
-6
lines changed

2 files changed

+12
-6
lines changed

src/traces/scatterternary/hover.js

+9-6
Original file line numberDiff line numberDiff line change
@@ -47,21 +47,24 @@ module.exports = function hoverPoints(pointData, xval, yval, hovermode) {
4747

4848
newPointData.xLabelVal = undefined;
4949
newPointData.yLabelVal = undefined;
50-
// TODO: nice formatting, and label by axis title, for a, b, and c?
5150

52-
var trace = newPointData.trace;
5351
var ternary = newPointData.subplot;
52+
newPointData.aLabel = Axes.tickText(ternary.aaxis, cdi.a, 'hover').text;
53+
newPointData.bLabel = Axes.tickText(ternary.baxis, cdi.b, 'hover').text;
54+
newPointData.cLabel = Axes.tickText(ternary.caxis, cdi.c, 'hover').text;
55+
56+
var trace = newPointData.trace;
5457
var hoverinfo = cdi.hi || trace.hoverinfo;
5558
var text = [];
5659
function textPart(ax, val) {
57-
text.push(ax._hovertitle + ': ' + Axes.tickText(ax, val, 'hover').text);
60+
text.push(ax._hovertitle + ': ' + val);
5861
}
5962
if(!trace.hovertemplate) {
6063
var parts = hoverinfo.split('+');
6164
if(parts.indexOf('all') !== -1) parts = ['a', 'b', 'c'];
62-
if(parts.indexOf('a') !== -1) textPart(ternary.aaxis, cdi.a);
63-
if(parts.indexOf('b') !== -1) textPart(ternary.baxis, cdi.b);
64-
if(parts.indexOf('c') !== -1) textPart(ternary.caxis, cdi.c);
65+
if(parts.indexOf('a') !== -1) textPart(ternary.aaxis, newPointData.aLabel);
66+
if(parts.indexOf('b') !== -1) textPart(ternary.baxis, newPointData.bLabel);
67+
if(parts.indexOf('c') !== -1) textPart(ternary.caxis, newPointData.cLabel);
6568
}
6669
newPointData.extraText = text.join('<br>');
6770
newPointData.hovertemplate = trace.hovertemplate;

test/jasmine/tests/scatterternary_test.js

+3
Original file line numberDiff line numberDiff line change
@@ -422,6 +422,9 @@ describe('scatterternary hover', function() {
422422
.then(function() {
423423
scatterPointData = _hover(gd, xval, yval, hovermode);
424424
expect(scatterPointData[0].hovertemplate).toEqual('tpl');
425+
expect(scatterPointData[0].aLabel).toBe('0.3333333');
426+
expect(scatterPointData[0].bLabel).toBe('0.1111111');
427+
expect(scatterPointData[0].cLabel).toBe('0.5555556');
425428
})
426429
.catch(failTest)
427430
.then(done);

0 commit comments

Comments
 (0)