plotly.js icon indicating copy to clipboard operation
plotly.js copied to clipboard

[BUG]: Coupled hoverinfo tooltips are misaligned

Open isaac-blanc opened this issue 3 weeks ago • 1 comments

Description

I have setup a coupled hover effect for two adjacent heatmaps using Fx.hover. As shown in the Gif below, the two hoverinfo boxes don't align. Technically, their arrows do point to the same locations in their respective heatmaps, but the left arrow points sharply upward and the right arrow points sharply downward. I think this makes the visualisation harder to interpret.

Screenshots/Video

This Gif shows the misaligned hoverinfo boxes.

Image

This screenshot shows the misalignment. I have drawn on the blue line for clarity. Note how the left tooltip is below the point, with its arrow pointing upwards, while the right tooltip is above the point, with its arrow pointing downwards. I feel like the tooltips should match one another and be aligned.

Image

These are the arrows that I get when the coupled hover effect is active.

Image

These are the 'standard' arrows that I get when the coupled hover effect is inactive. By this, I mean when I have commented-out the JavaScript that calls Fx.hover to update the tooltips. I would prefer if both tooltips had this style of arrow at all times, except for when the alternative style of arrow is really necessary.

Image

Steps to reproduce

I have attached two files. The Python file creates the plot and then injects the JS file, which handles the coupled hover interaction. Running the Python file creates an output.html file, which you can open in a browser and see the results shown above.

demo.js (~15 lines) demo.py (~30 lines)

Notes

I considered hiding the tooltip arrows as in #7278 but that would make the issue worse, since the tooltip boxes do not line up with each other.

isaac-blanc avatar Dec 03 '25 12:12 isaac-blanc

@isaac-blanc we're adding this to our backlog for now, but if you'd like to contribute a PR we're happy to review.

ndrezn avatar Dec 10 '25 16:12 ndrezn

@ndrezn would you be able to point me in the right direction for resolving this? Happy to have a stab if it's likely to be (somewhat) straightforward, but wary that I haven't contributed to plotly before.

isaac-blanc avatar Dec 12 '25 20:12 isaac-blanc