有没有办法让Dash中的DashTable不具有交互性



只需要一个函数,它返回一个小DF,通过短划线表输出到前端。我如何使单元格、行和列不可点击、不可悬停,这样用户就只能看到DF的单词和值,而不能与它交互?

或者,我应该使用另一个包装器对象来将DF输出到应用程序,但仍然能够维护CSS的CSS样式元素,如字体大小、宽度等?

以下是用于快速设置测试环境的默认DashTable代码:正如你所看到的,可以点击单元格并用红色突出显示,但我希望它只是静态的。

import dash
import dash_table
import pandas as pd
df = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/solar.csv')
app = dash.Dash(__name__)
app.layout = dash_table.DataTable(
id='table',
columns=[{"name": i, "id": i} for i in df.columns],
data=df.to_dict('records'),
)
if __name__ == '__main__':
app.run_server(debug=True)

通过挖掘找到了答案。将其插入到启动时运行的自定义css文件中

.dash-spreadsheet-container .dash-spreadsheet-inner table {
--accent: transparent  !important;
--border: transparent !important;
--text-color: transparent !important;
--hover: transparent !important;
--background-color-ellipses: transparent !important;
--faded-text: transparent !important;
--faded-text-header: transparent !important;
--selected-background: transparent !important;
--faded-dropdown: transparent !important;
--muted: transparent !important;
}

最新更新