plotly / plotly/plotly.py

Bar plot hover shows incorrect bar length when base is used

Aperta
#4,713 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

bug P3
Lingua principale
Python
Stelle
18.8k
Fork
2.8k
Merge medio
16h 26m
PR unite (30g)
21

Descrizione

Hello,

I tried making something like a Gantt chart and use the Bar plot type for that. It seems the hover effect is mixing up the columns somehow. Here is a minimal reproduction:

import pandas as pd
import plotly.express as px

gantt = []
gantt.append(dict(Begin=0, End=1, Word='Foo'))
gantt.append(dict(Begin=2, End=5, Word='Bar'))
gantt_df = pd.DataFrame(gantt)
gantt_df['Duration'] = (gantt_df['End'] - gantt_df['Begin'])

fig = px.bar(gantt_df, base="Begin", y="Duration", x="Word")
fig.show()

Here is the result:
image

Things of note:

  • The position and size of the bars is correct
  • The "Begin" annotation in the hover is correct
  • The "Duration" annotation shows the value of the "End" column, which is not correct. I would expect "End=5" or "Duration=3" but not "Duration=5"

Examining the pandas dataframe itself shows that the data itself is correct:
image

This is my version according to conda:
plotly 5.23.0 pyhd8ed1ab_0 conda-forge

Thank you for providing this great library for free and I hope that you find my report helpful.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia eseguendo la riproduzione minima di pandas e plotly.express dell'issue con plotly 5.23.0 e confronta i campi hover della barra visualizzata con Begin, End e Duration nel dataframe. Il lavoro è completato quando le posizioni delle barre rimangono corrette e l'hover mostra il valore di durata previsto invece di End.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
pandas, python
Ambito
data-visualization
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.