这里的问题很简单,但我似乎无法弄清楚。我有一个包含 3 个可能值的数据框列:print(df['Site'])0 ABC1 EFG2 ABC3 ABC4 HIJ当我绘制时,每个站点都有相同的颜色,但我希望每个标记都有一种颜色来代表该站点。我尝试过以下 2 个选项,但没有成功:fig.add_trace(go.Scatter(x=df['Reported Date'], y=df['Score'], mode='markers', marker= dict(color=list(map(SetColor, df['Site']))), name='Points', text="Site: " + df['Site'].map(str) + " " + "Ticket: "+ df['Ticket ID'].map(str)))fig.add_trace(go.Scatter(x=df['Reported Date'], y=df['Score'], mode='markers', marker_color= df['Site'], name='Points', text="Site: " + df['Site'].map(str) + " " + "Ticket: "+ df['Ticket ID'].map(str)))我知道 Plotly/Dash 想要一个整数。有解决办法吗?如何在标记中绘制站点颜色?
2 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
我将从映射颜色和站点的字典开始。
d = {
'ABC':'red',
'DEF':'green',
'GHI':'black'
}
您可以在那里使用任何HTML 颜色名称。
然后,您可以根据您的字典制作颜色列表。
colors = [d[k] for k in df['Site'].values]
最后,你可以传递marker_color=colors给fig.add_trace()
万千封印
TA贡献1891条经验 获得超3个赞
如果你使用 Plotly Express,你可以color_discrete_map
在px.scatter()
. 例如:
px.scatter(df, x='datetime', y='measurement', color='target', color_discrete_map={'value1': 'green', 'value2': 'red'})
资料来源:在 python plotly 包中的散点图中操作图例
添加回答
举报
0/150
提交
取消