Plotly:使用Python在多行打印中添加colorscale 总结

Plotly:使用Python在多行打印中添加colorscale 总结,python,time-series,plotly,timeserieschart,plotly-python,Python,Time Series,Plotly,Timeserieschart,Plotly Python,我想使用plotly python(plotly==3.7.1)将colorscale添加到多行图表中 我不想手动声明每个颜色十六进制 年份应订购彩色地图(例如:2000年为软蓝色…2018年为深蓝色) 当前绘图 示例图 代码 您可以使用库中的range\u to()函数在两种不同颜色(例如浅蓝色和深蓝色)之间生成一个颜色范围 layout = go.Layout( title = '', showlegend

我想使用plotly python(plotly==3.7.1)将colorscale添加到多行图表中

  • 我不想手动声明每个颜色十六进制
  • 年份应订购彩色地图(例如:2000年为软蓝色…2018年为深蓝色)
当前绘图

示例图

代码
您可以使用库中的
range\u to()
函数在两种不同颜色(例如浅蓝色和深蓝色)之间生成一个颜色范围

layout = go.Layout(
        title              = '',
        showlegend         = True,
        xaxis = dict(
            title          = '',
            zeroline       = False
        ),
        yaxis = dict(
            title          = '',
            zeroline       = False,
        )
    )    

fig = go.Figure(data = data, layout = layout)
import numpy as np
import plotly.graph_objects as go
from colour import Color

# number of lines
N = 10 

start_color = "#b2d8ff" # light blue
end_color = "#00264c" # dark blue

# list of "N" colors between "start_color" and "end_color"
colorscale = [x.hex for x in list(Color(start_color).range_to(Color(end_color), N))]

layout = dict(showlegend=True, plot_bgcolor="white", margin=dict(l=0, r=0, t=0, b=0),
              xaxis=dict(zeroline=False, showgrid=False, mirror=True, linecolor="#d9d9d9"),
              yaxis=dict(zeroline=False, showgrid=False, mirror=True, linecolor="#d9d9d9"))

data = []

for i in range(N):

    # artificial data
    x = np.linspace(0, 3)
    y = i + np.exp(x)

    data.append(go.Scatter(x=x, y=y, mode="lines", line=dict(color=colorscale[i], width=2), name="Line " + str(i + 1)))

fig = go.Figure(data=data, layout=layout)

fig.show()