导出如何在 plotly DataTable 中工作?
How does export work in plotly DataTable?
我正在 python 中开发一个应用程序,该应用程序在绘图数据表中显示数据(请参阅 https://dash.plot.ly/datatable)。在多个地方,文档提到了应该包含在 DataTable 中的导出或 copy/paste 功能。但是我找不到任何文档说明用户界面如何工作。
如果我有这样的数据表:
dash_table.DataTable(
id='rating-summary-table',
data=df_summary.to_dict('records)'),
columns=columns,
style_cell_conditional=[
{'if': dict(column_id='Name'), 'textAlign': 'left'},
],
)
它显示在网络中 UI,但如何调用 copy/paste 功能?它应该简单地复制剪贴板上显示的所有数据(使用 headers)以粘贴到 Excel 电子表格中。
我正在研究 Windows 10.
您可以在回调中使用组件 component_property derived_virtual_data,并编写如下内容:
df = pd.DataFrame(virtual_data)
例子
@app.callback(
Output('saved-results', 'children'),
[Input('save-button', 'n_clicks')],
[State(component_id='rating-summary-table', component_property="derived_virtual_data")],
)
def save_results(n_clicks, virtual_data):
if n_clicks is not None:
df = pd.DataFrame(virtual_data)
df.rename(columns={v: k for k, v in col_dict.items()}, inplace=True)
filename = datetime.datetime.now().strftime("%Y%m%d-%H%M%S") + '_results.csv'
saved_results.append(filename)
df.to_csv(RESULTS_DIRECTORY + filename,
encoding='utf-8',
index=False,
sep=';')
return files_list
else:
return [html.Li("Dataframe saved")]
我正在 python 中开发一个应用程序,该应用程序在绘图数据表中显示数据(请参阅 https://dash.plot.ly/datatable)。在多个地方,文档提到了应该包含在 DataTable 中的导出或 copy/paste 功能。但是我找不到任何文档说明用户界面如何工作。 如果我有这样的数据表:
dash_table.DataTable(
id='rating-summary-table',
data=df_summary.to_dict('records)'),
columns=columns,
style_cell_conditional=[
{'if': dict(column_id='Name'), 'textAlign': 'left'},
],
)
它显示在网络中 UI,但如何调用 copy/paste 功能?它应该简单地复制剪贴板上显示的所有数据(使用 headers)以粘贴到 Excel 电子表格中。 我正在研究 Windows 10.
您可以在回调中使用组件 component_property derived_virtual_data,并编写如下内容:
df = pd.DataFrame(virtual_data)
例子
@app.callback(
Output('saved-results', 'children'),
[Input('save-button', 'n_clicks')],
[State(component_id='rating-summary-table', component_property="derived_virtual_data")],
)
def save_results(n_clicks, virtual_data):
if n_clicks is not None:
df = pd.DataFrame(virtual_data)
df.rename(columns={v: k for k, v in col_dict.items()}, inplace=True)
filename = datetime.datetime.now().strftime("%Y%m%d-%H%M%S") + '_results.csv'
saved_results.append(filename)
df.to_csv(RESULTS_DIRECTORY + filename,
encoding='utf-8',
index=False,
sep=';')
return files_list
else:
return [html.Li("Dataframe saved")]