Skip to content

Commit 6c6937b

Browse files
authored
Merge pull request #6360 from VictorBezak/fixed_multicategory_hover
Fixed hover behaviour for multicategory plots
2 parents d8f7b3c + 5d83a4d commit 6c6937b

File tree

4 files changed

+961
-2
lines changed

4 files changed

+961
-2
lines changed

src/components/fx/hover.js

+12-2
Original file line numberDiff line numberDiff line change
@@ -888,7 +888,17 @@ function createHoverText(hoverData, opts) {
888888
var xa = c0.xa;
889889
var ya = c0.ya;
890890
var axLetter = hovermode.charAt(0);
891-
var t0 = c0[axLetter + 'Label'];
891+
var axLabel = axLetter + 'Label';
892+
var t0 = c0[axLabel];
893+
894+
// search in array for the label
895+
if(t0 === undefined && xa.type === 'multicategory') {
896+
for(var q = 0; q < hoverData.length; q++) {
897+
t0 = hoverData[q][axLabel];
898+
if(t0 !== undefined) break;
899+
}
900+
}
901+
892902
var outerContainerBB = getBoundingClientRect(gd, outerContainer);
893903
var outerTop = outerContainerBB.top;
894904
var outerWidth = outerContainerBB.width;
@@ -2067,7 +2077,7 @@ function getCoord(axLetter, winningPoint, fullLayout) {
20672077

20682078
var cd0 = winningPoint.cd[0];
20692079

2070-
if(ax.type === 'category') val = ax._categoriesMap[val];
2080+
if(ax.type === 'category' || ax.type === 'multicategory') val = ax._categoriesMap[val];
20712081
else if(ax.type === 'date') {
20722082
var periodalignment = winningPoint.trace[axLetter + 'periodalignment'];
20732083
if(periodalignment) {
33.8 KB
Loading

0 commit comments

Comments
 (0)