plotly / plotly/plotly.py

`plotly.colors.validate_colors` fails for valid colors and passes for invalid colors

Abierto
#4,957 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

bug P2
Lenguaje dominante
Python
Estrellas
18.8k
Forks
2.8k
Merge medio
16 h 26 min
PR fusionados (30 d)
21

Descripción

This function raises a PlotlyError for color formats that are valid within traces, but also does not raise errors for color formats that are not valid.

Example of a valid color string that does not pass: color = 'hsl(290, 100%, 50%)'. This works perfectly fine if you construct a trace with it, but fails the validation test because it does not contain "rgb" or "#".

import plotly.graph_objects as go
import plotly.colors as pc

color = 'hsl(290, 100%, 50%)'

# this works
trace = go.Scatter(x=[0], y=[0], marker=dict(color=color))
fig = go.Figure(trace)
fig.show()

# this does not
pc.validate_colors(color)  # this throws an error

Other cases:

  • A valid, named color string throws an error
  • The same named color within a list does not throw an error
  • An invalid named color within a list does not throw an error, but it should

Examples below

import plotly.colors as pc

pc.validate_colors('red')  # throws PlotlyError

pc.validate_colors(['red'])
>>> ['red']

pc.validate_colors(['asdflkjlaskdg'])
>>> ['asdflkjlaskdg']

Perhaps this function is not meant to be used in this way? If so then more information in the docstrings could be helpful.

Plotly version 5.24.1.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Comience en el punto de entrada plotly.colors.validate_colors y reproduzca los ejemplos de HSL, named-color, valid-list e invalid-list del issue. Siga cómo se validan las entradas escalares y de lista. Se considera terminado cuando se acepten los colores válidos compatibles con los traces, se rechacen los colores no válidos de forma coherente y el uso previsto de la función quede claro en su documentación.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
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
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.