我正在尝试使用 Dash 构建仪表板。当我转到默认网站 http://127.0.0.1:8050/ 时,我不断收到此错误,并收到 TypeError: cannot convert 'NoneType' object。检查图像是否有错误。我的代码没有任何错误,我之前能够运行它,仪表板也能完美运行。有人可以帮帮我吗?代码如下:
import dash # (version 1.12.0) pip install dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
import datetime
from datetime import date
app = dash.Dash(__name__)
# App layout
app.layout = html.Div([
html.H1("Snodas SWE/SD For January", style={'text-align': 'center'}),
dcc.DatePickerSingle(
id='my-date-picker-single',
min_date_allowed=date(2020, 1, 1),
max_date_allowed=date(2020, 12, 30),
initial_visible_month=date(2020, 1, 1),
date=date(2020, 1, 1)
),
html.Div(id='output-container-date-picker-single'),
dcc.Checklist(
options=[
{'label': 'SWE', 'value': 'SWE'},
{'label': 'SD', 'value': 'SD'}
],
labelStyle={'display': 'inline-block'}
),
html.Iframe(id='map', srcDoc=open('map1.html', 'r').read(), width='100%', height='1000')
])
@app.callback(
Output('map', 'srcDoc'),
Input('my-date-picker-single', 'date'))
def update_output(date):
return open('map_swe_sd_{}.html'.format(str(date)), 'r').read()
if __name__ == "__main__":
app.run_server(debug = True)
答案 0 :(得分:0)
试试这个:
@app.callback(
Output('map', 'srcDoc'),
Input('my-date-picker-single', 'date'))
def update_output(date):
if not date:
raise dash.exceptions.PreventUpdate
return open('map_swe_sd_{}.html'.format(str(date)), 'r').read()
答案 1 :(得分:0)
我对这一切都不熟悉,所以我希望我能按照常规规则正确地做到这一点:
当我只是尝试在 dash 网站上做 dash 教程时,我遇到了同样的问题。
我安装的 dash 或我的 python 环境有问题(我知道“有问题并不是真正识别问题)。这似乎与您的情况类似,因为回溯指向包,对吗?在创建并激活一个新的 python 环境并在那里安装 dash 后,一切正常。
我希望这也能帮到你。