-
Notifications
You must be signed in to change notification settings - Fork 16.6k
Description
Bug description
In the legacy World Map visualization (@superset-ui/legacy-plugin-chart-world-map), hovering over a country correctly applies the hover highlight.
However, on mouse-out, countries with 0 rows or no metric data remain colored and do NOT revert to the neutral background color.
This creates a persistent “hover-stuck” effect, even though the user is no longer hovering the region.
This behavior is consistent in both Explore mode and Dashboards.
A related historical issue describes how the World Map plugin assigns incorrect fallback colors for missing/zero values, which aligns with this problem.
Reference: “WorldMap coloring makes countries invisible”
Other map color inconsistencies have also been reported.
Expected behavior
When the cursor leaves a country polygon, the fill color should reset to a neutral no‑data color.
Regions with no metric values should not appear as if they are still highlighted.
Actual behavior
When hovering a country with no data, the highlight activates normally.
On mouse-out, the country stays colored (usually teal or the palette’s assigned hue) instead of returning to a neutral shade.
This makes it appear that the hover highlight remains active, even though the mouse is no longer over the region.
Steps to reproduce
Create a World Map chart using any dataset with multiple countries missing metric values (0 rows).
In Customize → Color By, choose Country (or a palette where missing values still get a color).
Hover over a country that has no metric data.
Move the mouse away.
Observe that the country remains colored rather than reverting to the no‑data background color.
Screenshots/recordings
Superset version
5.0.0
Python version
I don't know
Node version
I don't know
Browser
Chrome
Additional context
No response
Checklist
- I have searched Superset docs and Slack and didn't find a solution to my problem.
- I have searched the GitHub issue tracker and didn't find a similar bug report.
- I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.