我为什么想知道?
这似乎是一个非常简单的问题,但我在使用下拉菜单编辑具有多个轨迹的图形时遇到了一些困难,所以我真的很渴望确保我理解plotlys下拉菜单、更新菜单和按钮的内部工作原理100%正确。因此,如果有人能抽出时间来看看下面的示例,那就太好了。
问题是什么?
考虑由下面的代码片段生成的以下简单绘图:
情节1:
代码1:
# imports
import plotly.graph_objs as go
import pandas as pd
import numpy as np
# data
df1 = pd.DataFrame({'index': ['1','2','3'], 'A': [10,10,12], 'B': [11,11,11]})
df2 = pd.DataFrame({'index': ['1','2','3'], 'A': [10,10,10], 'B': [11,11,12]})
# plotly figure setup
fig=go.Figure()
fig.add_trace(go.Scatter(x=df1['index'], y=df1['A'], mode='lines'))
fig.add_trace(go.Scatter(x=df1['index'], y=df1['B'], mode='lines'))
#f=fig.to_dict()
fig.show()
Run Code Online (Sandbox Code Playgroud)
现在我想用 替换蓝线的数据,df1['A']=[10,10,12]同时用df2['A']=[10,10,10]替换红线的数据。df1['B']=[11,11,11]df1['B']=[11,11,11]
我可以通过引入如下下拉菜单轻松地做到这一点:
图 2 - 下拉菜单 = df1:
图 3 - 下拉菜单 =df2
代码 2 - 与代码 1 相同,但添加了菜单:
# …Run Code Online (Sandbox Code Playgroud)