Dash仪表盘第一个下拉菜单选年度航空性能报告无图表显示
问题定位
年度航空性能报告加载空白的核心原因是列名大小写拼写错误触发回调报错,你代码里开启了app.config.suppress_callback_exceptions = True配置,前端会直接吞掉回调错误、显示空白,不会弹出报错提示。
具体错误位置在生成平均飞行时间折线图的逻辑:
- 你在
compute_data_choice_1函数中做分组统计时,引用的列名是AirTime(首字母A、T大写),聚合后返回的line_data数据框里对应的列名也是AirTime - 但绘制折线图
line_fig时,y轴参数错写为Airtime(t小写),pandas匹配不到对应列会抛出KeyError,直接中断整个回调函数执行,导致5个图表容器都拿不到返回的组件,最终显示空白。
年度航空延误报告分支里所有列名引用和聚合时的命名完全一致,没有拼写错误,所以可以正常运行。
修复方案
只需要修正折线图的y轴列名拼写即可,修改后的对应代码段:
# TASK5: Average flight time by reporting airline line_fig = px.line(line_data, x='Month', y='AirTime', color='Reporting_Airline', title='Average monthly flight time (minutes) by airline')
修改完成后保存代码、重启应用,选择年度航空性能报告即可正常加载全部图表。
调试建议
在Theia环境开发时如果遇到类似页面空白无响应的问题,可以临时注释掉app.config.suppress_callback_exceptions = True这行配置,前端页面会直接展示回调的具体报错信息,能大幅缩短排查时间。
内容的提问来源于stack exchange,提问作者Cruxia Aryami
相关产品推荐
相关产品推荐

