Skip to content

Commit

Permalink
improve bbox for sunburst, treemap and icicle slices
Browse files Browse the repository at this point in the history
  • Loading branch information
archmoj committed Aug 26, 2021
1 parent 53e1b61 commit aa00c18
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 19 deletions.
27 changes: 8 additions & 19 deletions src/components/fx/hover.js
Original file line number Diff line number Diff line change
Expand Up @@ -131,21 +131,10 @@ exports.loneHover = function loneHover(hoverItems, opts) {
var gLeft = getLeftOffset(gd);

var pointsData = hoverItems.map(function(hoverItem) {
var _x0 = 0;
if(hoverItem.x0 !== undefined) _x0 = hoverItem.x0;
else if(hoverItem.x !== undefined) _x0 = hoverItem.x;

var _x1 = 0;
if(hoverItem.x1 !== undefined) _x1 = hoverItem.x1;
else if(hoverItem.x !== undefined) _x1 = hoverItem.x;

var _y0 = 0;
if(hoverItem.y0 !== undefined) _y0 = hoverItem.y0;
else if(hoverItem.y !== undefined) _y0 = hoverItem.y;

var _y1 = 0;
if(hoverItem.y1 !== undefined) _y1 = hoverItem.y1;
else if(hoverItem.y !== undefined) _y1 = hoverItem.y;
var _x0 = hoverItem._x0 || hoverItem.x0 || hoverItem.x || 0;
var _x1 = hoverItem._x1 || hoverItem.x1 || hoverItem.x || 0;
var _y0 = hoverItem._y0 || hoverItem.y0 || hoverItem.y || 0;
var _y1 = hoverItem._y1 || hoverItem.y1 || hoverItem.y || 0;

var eventData = hoverItem.eventData;
if(eventData) {
Expand Down Expand Up @@ -181,10 +170,10 @@ exports.loneHover = function loneHover(hoverItems, opts) {

return {
color: hoverItem.color || Color.defaultLine,
x0: _x0,
x1: _x1,
y0: _y0,
y1: _y1,
x0: hoverItem.x0 || hoverItem.x || 0,
x1: hoverItem.x1 || hoverItem.x || 0,
y0: hoverItem.y0 || hoverItem.y || 0,
y1: hoverItem.y1 || hoverItem.y || 0,
xLabel: hoverItem.xLabel,
yLabel: hoverItem.yLabel,
zLabel: hoverItem.zLabel,
Expand Down
6 changes: 6 additions & 0 deletions src/traces/icicle/draw_descendants.js
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,12 @@ module.exports = function drawDescendants(gd, cd, entry, slices, opts) {
}

updateSlices.each(function(pt) {
// for bbox
pt._x0 = viewX(pt.x0);
pt._x1 = viewX(pt.x1);
pt._y0 = viewY(pt.y0);
pt._y1 = viewY(pt.y1);

pt._hoverX = viewX(pt.x1 - trace.tiling.pad),
pt._hoverY = hasBottom ?
viewY(pt.y1 - trace.tiling.pad / 2) :
Expand Down
4 changes: 4 additions & 0 deletions src/traces/sunburst/fx.js
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,10 @@ module.exports = function attachFxHandlers(sliceTop, entry, gd, cd, opts) {
var hoverItems = {
trace: traceNow,
y: hoverCenterY,
_x0: pt._x0,
_x1: pt._x1,
_y0: pt._y0,
_y1: pt._y1,
text: thisText.join('<br>'),
name: (hovertemplate || hasFlag('name')) ? traceNow.name : undefined,
color: _cast('hoverlabel.bgcolor') || cdi.color,
Expand Down
6 changes: 6 additions & 0 deletions src/traces/treemap/draw_ancestors.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,12 @@ module.exports = function drawAncestors(gd, cd, entry, slices, opts) {
}

updateSlices.each(function(pt) {
// for bbox
pt._x0 = viewX(pt.x0);
pt._x1 = viewX(pt.x1);
pt._y0 = viewY(pt.y0);
pt._y1 = viewY(pt.y1);

pt._hoverX = viewX(pt.x1 - Math.min(width, height) / 2);
pt._hoverY = viewY(pt.y1 - height / 2);

Expand Down
6 changes: 6 additions & 0 deletions src/traces/treemap/draw_descendants.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,12 @@ module.exports = function drawDescendants(gd, cd, entry, slices, opts) {
updateSlices.each(function(pt) {
var isHeader = helpers.isHeader(pt, trace);

// for bbox
pt._x0 = viewX(pt.x0);
pt._x1 = viewX(pt.x1);
pt._y0 = viewY(pt.y0);
pt._y1 = viewY(pt.y1);

pt._hoverX = viewX(pt.x1 - trace.marker.pad.r),
pt._hoverY = hasBottom ?
viewY(pt.y1 - trace.marker.pad.b / 2) :
Expand Down

0 comments on commit aa00c18

Please sign in to comment.