如何在 plotly python 图中随机 select 颜色

How to randomly select colors in plotly python graph

我有以下数据列表:

date = ['2019-01-01', '2019-01-18', '2019-02-03']
value1 = [6798.0, 436.0, 348.0]
value2 = [500.0, 455.0, 348.0]

从这些列表中,我使用 plotly 库生成了一个折线图,这样:

  trace_1 = go.Scatter(x = date, 
                       y = value1,
                       mode = 'markers+lines',
                       marker_color='rgb(152, 0, .8)',      
                      name = '1')

  trace_2 = go.Scatter(x = date, 
                       y = value2,
                       mode = 'markers+lines',
                       marker_color='rgb(0, 0, .8)',
                       name = '2')

  data_total = [trace_1, trace_2]

  fig = go.Figure(data=data_total, layout=layout)
  py.iplot(fig)

图形运行完美,线条颜色不同。但是,我希望线条颜色能够随机自动生成,而不是像我那样手动生成。

学习本教程:https://www.kite.com/python/answers/how-to-generate-random-colors-in-matplotlib-in-python

我试过:

  colors = np.random.rand(1,3)

  trace_1 = go.Scatter(x = date, 
                       y = value1,
                       mode = 'markers+lines',
                       marker_color = colors,
                       name = '1')

   trace_2 = go.Scatter(x = date, 
                        y = value2,
                        mode = 'markers+lines',
                        marker_color = colors,
                        name = '2')

  data_total = [trace_1, trace_2]

  fig = go.Figure(data=data_total, layout=layout)
  py.iplot(fig)

但是这段代码不起作用。

你应该只需要注释掉marker_color。许多绘图库(包括plotly)倾向于自动分配颜色。