color_continuous_scale causes a bug when the last item is not 1.0
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 18.8k
- Forks
- 2.8k
- Merge medio
- 16 h 26 min
- PR fusionados (30 d)
- 21
Descripción
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.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza ejecutando la reproducción de treemap de Plotly Express proporcionada e inspecciona cómo se gestiona color_continuous_scale para los treemaps. Confirma el comportamiento cuando la posición final de la escala es inferior a 1.0 y, a continuación, añade una prueba de regresión que demuestre que no crea un treemap separado y conserva la coloración esperada.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- numpy, python
- Área
- data-visualization
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100