在破折号中将表格显示为图并添加滚动条

2022-04-19 00:00:00 python plotly plotly-dash

问题描述

我使用PLOTLY创建表,并以PLUTLY虚线显示它们。我想添加一个滚动条。这个是可能的吗?感谢您的帮助


#generate fig

import plotly.graph_objects as go

fig = go.Figure(data=[go.Table(header=dict(values=['A Scores', 'B Scores']),
                 cells=dict(values=[[100, 90, 80, 90], [95, 85, 75, 95]]))
                     ])
fig.show()


#show in dash

import dash
import dash_core_components as dcc
import dash_html_components as html

app = dash.Dash()
app.layout = html.Div([
    dcc.Graph(figure=fig)
])

app.run_server(debug=True, use_reloader=False)
背景是,我在一个pdf中使用该表,但也在一个情节清晰的仪表板中使用该表。使用joblib可以做到这一点。


解决方案

为什么要在DASH中将表显示为图形对象 您可以使用DataFrame中的以下逻辑创建表对象

import dash
import dash_core_components as dcc
import dash_html_components as html
import dash_table
import pandas as pd 

df = pd.DataFrame([[100, 90, 80, 90], [95, 85, 75, 95]]).T
df.columns = ['A Scores', 'B Scores']
app = dash.Dash()
app.layout = html.Div([
    dash_table.DataTable(
        id='table_id',
        columns = [{"name": i, "id": i} for i in df.columns],
        data = df.to_dict("rows"),
        row_selectable="single",
        fixed_rows={'headers': True, 'data': 0},
        fixed_columns={'headers': True, 'data': 0},
    )
])
app.run_server(debug=True, use_reloader=False)
然后,如果需要,将自动添加滚动条(或者您可以更改表格的大小 有关详细信息,请参阅https://dash.plotly.com/datatable

要将滚动条添加到图形对象,请使用以下

import dash
import dash_core_components as dcc
import dash_html_components as html
app = dash.Dash()
app.layout = html.Div([
    dcc.Graph(figure=fig,style={'overflowY': 'scroll', 'maxHeight': '200px'} )
])
app.run_server(debug=True, use_reloader=False)

相关文章