[Feature Request] Support Curved Decision Boundaries and Dynamic Phase Detection for Bar Components
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 24.4k
- Forks
- 2.3k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 13
Description
Curved Decision Boundary Bar Chart for Dash
1. Is your feature request related to a problem? Please describe.
In scientific data apps (such as thermodynamic $P$-$T$ phase diagrams), industrial monitoring dashboards, and multi-threshold analysis, users need to visualize dynamic bar elements interacting with non-linear, curved decision boundaries in a 2D parameter space.
Currently, creating dynamic threshold lines with dcc.Graph or standard Dash components primarily targets static, linear thresholds (horizontal or vertical lines). Calculating real-time intersections/collisions between a bar's moving vertex (X = position, Y = height) and polynomial/spline-based curved boundaries to dynamically update bar states (e.g., solid, liquid, gas, or alert levels) is mathematically complex and difficult to streamline in Dash callbacks.
2. Describe the solution you'd like
We would like Dash / Plotly components to support native properties or utilities for defining curved decision boundaries in coordinate space.
When a bar component's X-position or Y-height is dynamically modified via Dash callbacks or user interactions, the component could automatically evaluate the bar top's position against the curved boundaries, dynamically updating the bar's styling, labels, and phase/state triggers.
3. Describe alternatives you've considered
Currently, developers have to manually compute non-linear equations inside Python callbacks (@app.callback) or write low-level custom React/Canvas components using Dash component boilerplate. This introduces significant boilerplate, overhead, and potential latency for high-frequency interactive updates.
4. Additional context
Here is a reference implementation demo and open-source project demonstrating the desired behavior and phase collision logic:
- Live Demo: https://cnlnr.github.io/Curved-Boundary-Bar-Chart/
- GitHub Repository: https://github.com/cnlnr/Curved-Boundary-Bar-Chart
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the linked Curved-Boundary-Bar-Chart demo and repository, then examine how dcc.Graph, Dash callbacks, and custom React/Canvas components could relate to the request. Clarify the native API and supported boundary types before implementation; done should include curved-boundary evaluation and dynamic bar styling, labels, and phase/state triggers.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, react
- Domain
- data-visualization, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100