Open
Description
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.