Description
When using dragmode: "select", heatmaps do not fire plotly_click events for single clicks. This makes it impossible to handle both cell selection (drag) and single cell clicks in the same chart.
Treemap and Sunburst charts have dedicated click events (plotly_treemapclick, plotly_sunburstclick) that fire regardless of dragmode, but heatmaps have no equivalent.
Current Behavior
// With dragmode: "select"
graphDiv.on('plotly_click', (data) => {
// Never fires for heatmaps
});
graphDiv.on('plotly_selected', (data) => {
// Fires with undefined data on single clicks
});
Requested Behavior
Add a plotly_heatmapclick event (similar to how plotly_treemapclick works) that fires when clicking on a heatmap cell, regardless of dragmode setting.
graphDiv.on('plotly_heatmapclick', (data) => {
// data.points[0] contains { x, y, z, pointIndex, curveNumber, ... }
});
Why should this feature be added?
We're building reactive heatmap charts in marimo where users can:
- Drag to select a range of cells → works via
plotly_selected
- Click a single cell to select it → does not work with
dragmode: "select"
Currently, users must drag even for single-cell selections, which is unintuitive.
Notes
If this feature is something the team would accept, I'm happy to submit a PR implementing it. Any pointers on where to start in the codebase would be appreciated (e.g., how plotly_treemapclick is implemented).
Description
When using
dragmode: "select", heatmaps do not fireplotly_clickevents for single clicks. This makes it impossible to handle both cell selection (drag) and single cell clicks in the same chart.Treemap and Sunburst charts have dedicated click events (
plotly_treemapclick,plotly_sunburstclick) that fire regardless of dragmode, but heatmaps have no equivalent.Current Behavior
Requested Behavior
Add a
plotly_heatmapclickevent (similar to howplotly_treemapclickworks) that fires when clicking on a heatmap cell, regardless ofdragmodesetting.Why should this feature be added?
We're building reactive heatmap charts in marimo where users can:
plotly_selecteddragmode: "select"Currently, users must drag even for single-cell selections, which is unintuitive.
Notes
If this feature is something the team would accept, I'm happy to submit a PR implementing it. Any pointers on where to start in the codebase would be appreciated (e.g., how
plotly_treemapclickis implemented).