[Feature Request] Support Curved Decision Boundaries and Dynamic Phase Detection for Bar Components
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Tranquilla
- Stack tecnologico
- python, react
- Ambito
- data-visualization, frontend
Direzione di ricerca
Inizia esaminando la demo e il repository Curved-Boundary-Bar-Chart collegati, quindi analizza come dcc.Graph, le callback di Dash e i componenti React/Canvas personalizzati potrebbero essere correlati alla richiesta. Chiarisci l’API nativa e i tipi di boundary supportati prima dell’implementazione; done dovrebbe includere la valutazione delle boundary curve, nonché lo styling dinamico delle barre, le etichette e i trigger di fase/stato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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
- Lingua principale
- Python
- Stelle
- 24.4k
- Fork
- 2.3k
- Merge medio
- 1g 21h
- PR unite (30g)
- 19
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di plotly/dash
-
good first issue P3 size: 1 task
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
enhancement P2 size: 5
Difficoltà 5/5 Più di una settimana Idoneità per principianti 45/100
-
enhancement P3 size: 10+
-
P2 size: 1 task
-
enhancement P3 size: 1
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
canonical/paas-charm#368 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
tech debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
addition to tracking list Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
StevenBlack/hosts#3256 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
qualcomm/qai-appbuilder#275 ·