我正在学习 Dash,最终目标是开发一个可以快速分析 Excel 文件中的数据集的应用程序。我想要一个允许在 Excel 文件中的工作表之间切换的下拉菜单。我无法让它正常运行。我可以将其输出到图表但不能输出到表格。我的代码如下:
import dash
from dash.dependencies import Input, Output
import dash_core_components as dcc
import dash_html_components as html
import dash_table_experiments as dt
import pandas as pd
app = dash.Dash()
df = pd.read_excel('output.xlsx', sheet_name=None)
app.layout = html.Div(
html.Div([dcc.Dropdown(id='drop_value',
options=[{'label': i, 'value': i} for i in df],
value='Sheet1')]),
html.Div([dt.DataTable(rows=[{}],
id='table')])
)
@app.callback(Output('table', 'rows'), [Input('drop_value', 'value')])
def update_info_table(drop_value):
if drop_value == 'Sheet1':
new_data = df['Sheet1'].to_dict()
return new_data
elif drop_value == 'Sheet2':
new_data = df['Sheet2'].to_dict()
return new_data
else:
new_data = df['Sheet3'].to_dict()
return new_data
if __name__ == '__main__':
app.run_server()
当我运行此代码时,我收到以下错误: TypeError: init () takes from 1 to 2 positional arguments but 3 were given
我假设这与我试图提供给数据表的数据集的格式有关。现在我只是使用一个只有两列标记为“x1”和“y1”的虚拟 excel 文件。