plotly / plotly/plotly.py

Sided twin violins render boxplot whiskers incorrectly

Offen
#5,323 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug P2
Vorherrschende Sprache
Python
Sterne
18.8k
Forks
2.8k
Ø Merge
16 Std. 26 Min.
Gemergte PRs (30 T.)
21

Beschreibung

Plotly version: 6.3.0

Follow-up to #1634 (never resolved).

When using sided (split) violins with box=dict(visible=True), the boxplot whiskers are drawn at the inner edge of each half-box, rather than being centered as in a normal boxplot.

This makes the left and right whiskers appear extremely close together, which creates significant visual confusion.

Example from #1634 (Advanced Violin Plot example with box=dict(visible=True)):
Image

My reproduction:
Image

Normal (non-sided) violins for comparison:
Image

Plotly 6.1.2 (in my work):
Image

Possible cause:
The boxplots may be internally split in half to fit each half-violin, shifting the “center” used for whisker rendering to the midpoint between the halves.

Possible solutions:

  • Preferred: Render each half-boxplot with whiskers centered over its own half-violin.
  • Alternative: Allow configurable spacing between the halves to reduce whisker overlap.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Keine Quelldatei oder kein Test ist angegeben. Beginne damit, das sided-violin-Beispiel aus Advanced Violin Plot mit box=dict(visible=True) zu reproduzieren, und vergleiche es anschließend mit einem normalen Violinplot und Plotly 6.1.2, während du den Rendering-Pfad für geteilte Boxen nachverfolgst. Als erledigt gilt, dass die Whisker für jede Hälfte korrekt zentriert sind, ohne normale Violinplots zu beeinträchtigen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
data-visualization
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.