【问题标题】:Dynamically Fill Out Dropdown in Dash在 Dash 中动态填写下拉菜单
【发布时间】:2020-06-02 18:31:50
【问题描述】:

在数据框中运行我的 sql 语句后,我遇到了一个问题。我确定我遗漏了一些简单的东西,但它让我坚持了很长时间,而且我在让我的仪表板项目启动时也遇到了问题。

在下面的代码中,当我运行它时,我在下拉列表中所能得到的只是 UNUM,我无法弄清楚我做错了什么来从中获取我的值。我可以毫无问题地打印 eqids,但我无法正确迭代它。感谢您的帮助

import dash
import dash_bootstrap_components as dbc
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
import dash_table

import pandas as pd
import sqlite3

import plotly.graph_objs as go

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

conn = sqlite3.connect(
    r"mysqlfile")
c = conn.cursor()

eqids = pd.read_sql("SELECT distinct UNUM FROM AllTestData", conn)
#names = list(eqids.keys())
print(eqids)
'''df = pd.read_sql("select * from AllTestData", conn)
df = df[['UNUM', 'DT_TAKEN', 'Iron', 'Chromium', 'Lead', 'Copper', 'Tin', 'Aluminum', 'Nickel', 'Silver', 'Silicon', 'boron', 'Sodium', 'Magnesium', 'Calcium', 'Barium', 'Phosphorous', 'Zinc',
         'Molybdenum', 'Tin1', 'Vandium', 'W', 'Potassium', 'Antimony', 'Lithium', 'Maganese', 'Cadmium', 'VISC40', 'TAN', 'KFISH', 'WATER', 'PC0', 'PC1', 'pc2', 'pc3', 'pc4', 'pc5', 'PCISO0', 'PCISO1', 'PCISO2']]
df.head(1)
'''

app.layout = html.Div([
    html.Label('Select Equipment ID'),
    dcc.Dropdown(
        id='equipment-list',
        options=[{'label': i, 'value': i} for i in eqids],
    ),
    dcc.Graph(id='test-graph')
    # html.Div(id='test-graph')
])


if __name__ == '__main__':
    app.run_server(debug=True)

【问题讨论】:

    标签: python python-3.x plotly-dash


    【解决方案1】:

    doh,我的选项代码中需要这个 eqids.UNUM。

    【讨论】:

      猜你喜欢
      • 2019-08-29
      • 1970-01-01
      • 2023-04-05
      • 1970-01-01
      • 2012-09-03
      • 1970-01-01
      • 2014-07-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多