Skip to content

Commit aa00c18

Browse files
committed
improve bbox for sunburst, treemap and icicle slices
1 parent 53e1b61 commit aa00c18

File tree

5 files changed

+30
-19
lines changed

5 files changed

+30
-19
lines changed

src/components/fx/hover.js

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -131,21 +131,10 @@ exports.loneHover = function loneHover(hoverItems, opts) {
131131
var gLeft = getLeftOffset(gd);
132132

133133
var pointsData = hoverItems.map(function(hoverItem) {
134-
var _x0 = 0;
135-
if(hoverItem.x0 !== undefined) _x0 = hoverItem.x0;
136-
else if(hoverItem.x !== undefined) _x0 = hoverItem.x;
137-
138-
var _x1 = 0;
139-
if(hoverItem.x1 !== undefined) _x1 = hoverItem.x1;
140-
else if(hoverItem.x !== undefined) _x1 = hoverItem.x;
141-
142-
var _y0 = 0;
143-
if(hoverItem.y0 !== undefined) _y0 = hoverItem.y0;
144-
else if(hoverItem.y !== undefined) _y0 = hoverItem.y;
145-
146-
var _y1 = 0;
147-
if(hoverItem.y1 !== undefined) _y1 = hoverItem.y1;
148-
else if(hoverItem.y !== undefined) _y1 = hoverItem.y;
134+
var _x0 = hoverItem._x0 || hoverItem.x0 || hoverItem.x || 0;
135+
var _x1 = hoverItem._x1 || hoverItem.x1 || hoverItem.x || 0;
136+
var _y0 = hoverItem._y0 || hoverItem.y0 || hoverItem.y || 0;
137+
var _y1 = hoverItem._y1 || hoverItem.y1 || hoverItem.y || 0;
149138

150139
var eventData = hoverItem.eventData;
151140
if(eventData) {
@@ -181,10 +170,10 @@ exports.loneHover = function loneHover(hoverItems, opts) {
181170

182171
return {
183172
color: hoverItem.color || Color.defaultLine,
184-
x0: _x0,
185-
x1: _x1,
186-
y0: _y0,
187-
y1: _y1,
173+
x0: hoverItem.x0 || hoverItem.x || 0,
174+
x1: hoverItem.x1 || hoverItem.x || 0,
175+
y0: hoverItem.y0 || hoverItem.y || 0,
176+
y1: hoverItem.y1 || hoverItem.y || 0,
188177
xLabel: hoverItem.xLabel,
189178
yLabel: hoverItem.yLabel,
190179
zLabel: hoverItem.zLabel,

src/traces/icicle/draw_descendants.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,12 @@ module.exports = function drawDescendants(gd, cd, entry, slices, opts) {
116116
}
117117

118118
updateSlices.each(function(pt) {
119+
// for bbox
120+
pt._x0 = viewX(pt.x0);
121+
pt._x1 = viewX(pt.x1);
122+
pt._y0 = viewY(pt.y0);
123+
pt._y1 = viewY(pt.y1);
124+
119125
pt._hoverX = viewX(pt.x1 - trace.tiling.pad),
120126
pt._hoverY = hasBottom ?
121127
viewY(pt.y1 - trace.tiling.pad / 2) :

src/traces/sunburst/fx.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,10 @@ module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
132132
var hoverItems = {
133133
trace: traceNow,
134134
y: hoverCenterY,
135+
_x0: pt._x0,
136+
_x1: pt._x1,
137+
_y0: pt._y0,
138+
_y1: pt._y1,
135139
text: thisText.join('<br>'),
136140
name: (hovertemplate || hasFlag('name')) ? traceNow.name : undefined,
137141
color: _cast('hoverlabel.bgcolor') || cdi.color,

src/traces/treemap/draw_ancestors.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,12 @@ module.exports = function drawAncestors(gd, cd, entry, slices, opts) {
8989
}
9090

9191
updateSlices.each(function(pt) {
92+
// for bbox
93+
pt._x0 = viewX(pt.x0);
94+
pt._x1 = viewX(pt.x1);
95+
pt._y0 = viewY(pt.y0);
96+
pt._y1 = viewY(pt.y1);
97+
9298
pt._hoverX = viewX(pt.x1 - Math.min(width, height) / 2);
9399
pt._hoverY = viewY(pt.y1 - height / 2);
94100

src/traces/treemap/draw_descendants.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,12 @@ module.exports = function drawDescendants(gd, cd, entry, slices, opts) {
124124
updateSlices.each(function(pt) {
125125
var isHeader = helpers.isHeader(pt, trace);
126126

127+
// for bbox
128+
pt._x0 = viewX(pt.x0);
129+
pt._x1 = viewX(pt.x1);
130+
pt._y0 = viewY(pt.y0);
131+
pt._y1 = viewY(pt.y1);
132+
127133
pt._hoverX = viewX(pt.x1 - trace.marker.pad.r),
128134
pt._hoverY = hasBottom ?
129135
viewY(pt.y1 - trace.marker.pad.b / 2) :

0 commit comments

Comments
 (0)