[英]Dash python : How to fill dcc.dropdown with csv content?
我想用 python 和 Dash 創建一個網絡應用程序。 我嘗試的第一個方法是創建一個下拉列表。
我有這些數據:
Date,FS,Total,Used,Mount
2020-01-25-12-00,/dev/hd1/,350,300,/dev/mount1
2020-01-25-18-00,/dev/hd2/,370,320,/dev/mount2
2020-01-26-06-00,/dev/hd3/,395,350,/dev/mount3
2020-01-26-12-00,/dev/hd1/,350,300,/dev/mount1
2020-01-26-18-00,/dev/hd2/,370,320,/dev/mount2
2020-01-27-06-00,/dev/hd3/,395,350,/dev/mount3
2020-01-27-12-00,/dev/hd1/,350,300,/dev/mount1
2020-01-27-18-00,/dev/hd2/,370,320,/dev/mount2
2020-01-28-06-00,/dev/hd3/,395,350,/dev/mount3
2020-01-28-12-00,/dev/hd1/,350,300,/dev/mount1
2020-01-28-18-00,/dev/hd2/,370,320,/dev/mount2
2020-01-29-06-00,/dev/hd3/,395,350,/dev/mount3
我想用我的 CSV 的所有 FS 創建一個下拉列表。 我試試:
import dash
import dash_core_components as dcc
import dash_html_components as html
import sys
import os
import pandas as pd
app = dash.Dash
df = pd.read_csv('/xxx/xxx/xxx/xxx/xxx/xxx/data.txt')
test = df['FS'].unique()
dcc.Dropdown(
options=[test],
searchable=False
)
if __name__ == '__main__':
app.run_server(debug=True)
但輸出是
Traceback (most recent call last):
File "./import dash.py", line 25, in <module>
app.run_server(debug=True)
TypeError: run_server() missing 1 required positional argument: 'self'
你能告訴我為什么嗎 ?
您的代碼中存在一些問題:
您必須為破折號應用程序指定一個名稱,例如app = dash.Dash('app_name')
您的 csv 有混合分隔符( ,
在標題中和;
在元組中)
下拉選項語法是{'label: 'somelabel', 'value':'somevalue'}
,例如(參考。下拉示例和參考)
options=[
{'label': 'New York City', 'value': 'NYC'},
{'label': 'Montreal', 'value': 'MTL'},
{'label': 'San Francisco', 'value': 'SF'}
],
app.layout
總結:
import dash
import dash_core_components as dcc
import dash_html_components as html
import sys
import os
import pandas as pd
app = dash.Dash('app_name')
df = pd.read_csv('/xxx/xxx/xxx/xxx/xxx/xxx/data.txt')
test = df['FS'].unique()
options = [{'label': t, 'value': t} for t in test]
app.layout = dcc.Dropdown(
options=options,
searchable=False
)
if __name__ == '__main__':
app.run_server(debug=True)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.