答案:
您将使用 plotly express 和 color 属性实现相同的目的:
fig = px.line(dfm, x="dates", y="value", color='variable')
详情:
您没有详细描述数据的结构,但是像这样分配色调通常意味着应用于诸如...的数据结构。
Date Variable Value
01.01.2020 A 100
01.01.2020 B 90
01.02.2020 A 110
01.02.2020 B 120
...其中将唯一的色调或颜色分配给与时间戳列相关联的不同变量名称,其中每个时间戳出现的次数与变量的数量一样多。
seaborn 似乎也是如此:
hue : 数据或向量数据中的变量名称,可选
将产生不同颜色的点的分组变量。能
可以是分类的或数字的,尽管颜色映射会表现
后一种情况不同。
您可以通过使用go.Scatter() 中的color 属性来实现相同的目的,但似乎您也可以充分利用plotly.express。在您提供适当的数据样本之前,我将向您展示如何使用 numpy 和 pandas 的数据框中的一些采样数据来完成此操作。
剧情:
代码:
# imports
import numpy as np
import pandas as pd
import plotly.express as px
# sample time series data
np.random.seed(123)
df = pd.DataFrame(np.random.randint(-10,12,size=(50, 4)), columns=list('ABCD'))
datelist = pd.date_range(pd.datetime(2020, 1, 1).strftime('%Y-%m-%d'), periods=50).tolist()
df['dates'] = datelist
df = df.set_index(['dates'])
df.index = pd.to_datetime(df.index)
df.iloc[0]=0
df=df.cumsum().reset_index()
# melt data to provide the data structure mentioned earlier
dfm=pd.melt(df, id_vars=['dates'], value_vars=df.columns[1:])
dfm.set_index('dates')
dfm.head()
# plotly
fig = px.line(dfm, x="dates", y="value", color='variable')
fig.show()