color_continuous_scale causes a bug when the last item is not 1.0
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 18.8k
- Forks
- 2.8k
- Ø Merge
- 16 Std. 26 Min.
- Gemergte PRs (30 T.)
- 21
Beschreibung
import plotly.express as px
import numpy as np
df = px.data.gapminder().query("year == 2007")
fig = px.treemap(df, path=[px.Constant("world"), 'continent', 'country'], values='pop',
color='lifeExp', hover_data=['iso_alpha'],
color_continuous_scale=[(0, 'red'), (0.4, 'yellow'), (1.0, 'green')],
color_continuous_midpoint=np.average(df['lifeExp'], weights=df['pop']))
fig.update_layout(margin = dict(t=50, l=25, r=25, b=25))
fig.show()
This gives me the result I want.
However, something like:
color_continuous_scale=[(0, 'red'), (0.4, 'yellow'), (0.8, 'green')],
creates a whole separate treemap.
This fixes the issue:
color_continuous_scale=[(0, 'red'), (0.4, 'yellow'), (0.8, 'green')], (1.0, 'green')],
I'm not sure if there's anything to even technically "fix" here, but it was expected behaviour that I didn't get.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die bereitgestellte Plotly Express-Treemap-Reproduktion auszuführen und zu untersuchen, wie color_continuous_scale für Treemaps verarbeitet wird. Bestätige das Verhalten, wenn die letzte Position der Skala unter 1.0 liegt, und füge anschließend einen Regressionstest hinzu, der zeigt, dass dadurch keine separate Treemap erstellt wird und die erwartete Farbgebung erhalten bleibt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- numpy, python
- Bereich
- data-visualization
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100