【问题标题】:Plotly Dash Error loading layoutPlotly Dash 错误加载布局
【发布时间】:2018-07-03 07:47:27
【问题描述】:

您好,我是 Dash 的新手,我正在关注页面 https://dash.plot.ly/getting-started 上的教程,我收到一个错误,指出未安装 msgpack。我稍后安装它,然后运行页面上给出的以下代码。

import dash
import dash_core_components as dcc
import dash_html_components as html

app = dash.Dash()

app.layout = html.Div(children=[
    html.H1(children='Hello Dash'),

    html.Div(children='''
        Dash: A Web Application framework for Python.
        '''),

    dcc.Graph(
        id='example-graph',
        figure={
            'data':[
                {'x':[1,2,3],'y':[2,4,1],'type':'bar','name':'SF'}
            ],
            'layout': {
                'title':'Dash Data Visualisation'
            }
        }
    )
])

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

当我继续 http://127.0.0.1:8050/ 时,我收到以下错误

Error loading layout

我阅读了 dash 文档和社区帮助,有人问了一些类似的问题,但我无法理解它们。请帮忙。

【问题讨论】:

    标签: python flask plotly-dash


    【解决方案1】:

    code 在终端中运行时运行良好。该链接显示bar plot(如下)。可能是您的dash 安装缺少一些libraries / requirement 文件。您可以尝试从终端执行pip installconda install 下面列出的pacakges。

    使用pip安装的示例

    $ pip install <package name here>
    

    或者如果使用Ananconda

    $ conda install <package name here>
    

    示例:

    $ pip install chardet==3.0.4
    

    chardet==3.0.4
    click==6.7
    Cython==0.28.2
    dash==0.21.0
    dash-core-components==0.22.1
    dash-html-components==0.10.0
    dash-renderer==0.12.1
    decorator==4.3.0
    nbformat==4.4.0
    numpy==1.14.2
    pandas==0.22.0
    pandas-datareader==0.6.0
    plotly==2.5.1
    python-dateutil==2.7.2
    pytz==2018.4
    requests==2.18.4
    urllib3==1.22
    Werkzeug==0.14.1
    

    编辑 - 1 .........................................

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    
    app = dash.Dash()
    app.layout = html.Div(children=[html.H1(children='Hello Dash')])
    if __name__ == '__main__':
        app.run_server(debug=True)
    

    post的基础上添加下面一行来导入。

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    from dashapp import app as application
    
    app = dash.Dash()
    app.layout = html.Div(children=[html.H1(children='Hello Dash')])
    if __name__ == '__main__':
        app.run_server(debug=True)
    

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    from dashapp import server as application
    
    app = dash.Dash()
    app.layout = html.Div(children=[html.H1(children='Hello Dash')])
    if __name__ == '__main__':
        app.run_server(debug=True)
    

    import dash
    import dash_core_components as dcc
    import dash_html_components as html
    from dashapp import server as application
    
    app = dash.Dash()
    app.layout = html.Div(children=[html.H1(children='Hello Dash')])
    if __name__ == '__main__':
        app.run_server(debug=True)
    
    from dashapp import server as application
    

    和/或更改以下任一 [post]

    app = Dash()
    app = dash.Dash(__name__)
    server = app.server
    

    编辑 - 2 .........................................

    Install dash libraries

    pip install dash==0.21.1  # The core dash backend
    pip install dash-renderer==0.13.0  # The dash front-end
    pip install dash-html-components==0.11.0  # HTML components
    pip install dash-core-components==0.24.0  # Supercharged components
    pip install plotly --upgrade  # Latest Plotly graphing library
    

    also

    pip install dash.ly --upgrade
    

    【讨论】:

    • 嗨 Nilesh,我已经安装了 dash 网站上提到的所有依赖项和库。我重新安装了它们并再次运行命令,但错误是一样的。 :(
    • 如果您在code 的第4 行尝试app = dash.Dash(__name__) 会怎样。
    • 还是一样:(
    • 在查看了一些posts 之后,我添加了来自Edit-1 的一些可能可行的建议。如果这不起作用,那么另一种选择是uninstallreinstall plotly
    • 嗨 Nikhil,我按照你说的做了。现在,我收到一条错误消息,提示没有安装名为 dashapp 的模块,当我尝试使用 pip install dashapp 时,我收到消息说没有名为 dashapp 的模块
    【解决方案2】:

    我再次删除了所有库并重新安装了它们,并在 Chrome 中运行了代码。现在工作正常。

    【讨论】:

      【解决方案3】:

      我也是 Dash 的新手,就我而言,语法有问题。

      我正在这样做:

      app.layout = html.Div({
      

      并且收到“错误加载布局”

      但是当我切换到这个时:

      app.layout = html.Div(children=[
      

      错误消失了。

      检查主 Div 的语法是否有任何错误。

      【讨论】:

      【解决方案4】:

      当您在较旧的 Shinyproxy 版本中使用 dash 时,您会遇到同样的错误。由于搜索会将您重定向到此帖子,因此我也将答案放在这里。

      使用

      app.config.update({
      'routes_pathname_prefix': os.environ['SHINYPROXY_PUBLIC_PATH'],
      'requests_pathname_prefix': os.environ['SHINYPROXY_PUBLIC_PATH']
      })
      

      如图here和讨论here

      【讨论】:

        猜你喜欢
        • 2019-04-29
        • 2020-12-14
        • 2022-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-21
        • 2021-09-14
        • 1970-01-01
        相关资源
        最近更新 更多