You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pandas.date_range时Plotly-Dash出现“Error loading dependencies”未知问题

解决Plotly-Dash加载依赖错误(关联pandas.date_range场景)

我之前也踩过类似的坑——在用pandas.date_range生成日期范围后,Dash应用直接弹出"Error loading dependencies"的报错,折腾了好一阵才找到修复方向。结合你提供的代码片段,我帮你梳理下问题点和修正后的完整实现:

问题根源拆解

你的代码里存在几个语法小问题,这些细节会导致Dash无法正确解析组件结构,进而触发依赖加载错误:

  • html.Label标签未闭合,且id属性值被截断不完整
  • 外层html.Div的子元素列表没有正确闭合
  • 另外,pandas.date_range生成的datetime对象直接给Dash组件使用,可能会引发隐性的类型解析冲突

修正后的完整可运行代码

import dash
import dash_core_components as dcc
import dash_html_components as html
import plotly.graph_objs as go
import pandas as pd

# 建议添加__name__参数,避免部署时的资源路径问题
app = dash.Dash(__name__)

# 生成周度日期范围,并转换为字符串格式供Dash组件识别
daterange = pd.date_range(start='1994', end='2018', freq='W')
date_strings = [date.strftime('%Y-%m-%d') for date in daterange]

app.layout = html.Div(children=[
    html.H1('Range Slider Testing'),
    html.Div(
        [
            html.Label('From 1994 to 2018', id='date-range-label'),
            # 补充实际可用的范围滑块组件,让测试场景更完整
            dcc.RangeSlider(
                id='date-slider',
                min=0,
                max=len(date_strings)-1,
                value=[0, len(date_strings)-1],
                # 每52周(约一年)标记一次日期
                marks={i: date_strings[i] for i in range(0, len(date_strings), 52)}
            )
        ]
    )
])

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

关键修复说明

  1. 补全了所有未闭合的标签和括号,保证组件结构的语法正确性
  2. 将pandas.date_range生成的datetime对象转换成字符串格式,避免Dash组件解析日期时的类型冲突
  3. 添加__name__参数到dash.Dash(),这是Dash应用的标准写法,能规避开发和部署时的资源路径问题
  4. 补充了可交互的dcc.RangeSlider组件,让你的测试场景从静态标签变成可实际操作的功能

按照这个代码运行,应该就能解决"Error loading dependencies"的问题了。

内容的提问来源于stack exchange,提问作者DrGamepad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:23:04