标签: plotly-dash

添加注释文本会产生整数错误消息

当我向图表中添加 vline 时,效果非常好:

fig.add_vline(
        x=pd.to_datetime('1970-01-01 00:00:00'),
        line_dash='dot',
        row=0)
Run Code Online (Sandbox Code Playgroud)

[![在此处输入图像描述][1]][1]

当我尝试在 vline 旁边添加注释文本时,我收到一条错误消息

fig.add_vline(
    x=pd.to_datetime('1970-01-01 00:00:00'),
    line_dash='dot',
    annotation_text='15',
    row=0)
Run Code Online (Sandbox Code Playgroud)

类型错误:不再支持带有时间戳的整数和整数数组的加/减。不用加/减n,而是使用n * obj.freq

python plotly plotly-dash

4
推荐指数
1
解决办法
1541
查看次数

Plotly Dash ZMQError:地址已在使用中

我正在测试 Plotly Dash 作为可能的仪表板工具。

我正在尝试运行文档中找到的图表之一:https ://plotly.com/python/bar-charts/

import dash
from dash import dcc
from dash import html
from dash.dependencies import Input, Output
import plotly.express as px

df = px.data.tips()
days = df.day.unique()

app = dash.Dash(__name__)

app.layout = html.Div([
    dcc.Dropdown(
        id="dropdown",
        options=[{"label": x, "value": x} for x in days],
        value=days[0],
        clearable=False,
    ),
    dcc.Graph(id="bar-chart"),
])

@app.callback(
    Output("bar-chart", "figure"), 
    [Input("dropdown", "value")])
def update_bar_chart(day):
    mask = df["day"] == day
    fig = px.bar(df[mask], x="sex", y="total_bill", 
                 color="smoker", barmode="group")
    return fig

app.run_server(debug=True, port=8049)
Run Code Online (Sandbox Code Playgroud)

当我运行这个时,我收到一个错误。这是跟踪回调的结尾:

File "zmq/backend/cython/checkrc.pxd", line …
Run Code Online (Sandbox Code Playgroud)

python plotly-dash

4
推荐指数
1
解决办法
1640
查看次数

隐藏模式栏在Dash中

在我们的Dash图表中,我们试图隐藏浮动工具栏,该工具栏允许用户缩放,平移,保存,捕获等。要实现这一点,我知道在绘图中可以将displayModeBar参数设置为false。如何在Dash中完成?

plotly plotly-dash

3
推荐指数
1
解决办法
1970
查看次数

Python-Dash从Excel文件创建堆叠的条形图

如何转换这样的图形:

df1 = pd.read_excel("C:/Users/Tim/PycharmProjects/firstdash/Analysis.xlsx")

     html.Div(
                [
                    html.H3("Graph 1"),
                    dcc.Graph(
                        id="g1",
                        figure={
                            "data": [
                                go.Bar(
                                    x=df1["Marketsegment"],
                                    y=df1["test"],
                                )]})],)
Run Code Online (Sandbox Code Playgroud)

sdasdasdsadasdasda

进入堆积的条形图。因此,一个包含总住宅和企业的酒吧以不同的颜色堆叠在一起。

我似乎无法以某种方式使其工作。

我发现的只是这种语法,不适用于我:

trace1 = go.Bar(
    x=['giraffes', 'orangutans', 'monkeys'],
    y=[20, 14, 23],
    name='SF Zoo'
)
trace2 = go.Bar(
    x=['giraffes', 'orangutans', 'monkeys'],
    y=[12, 18, 29],
    name='LA Zoo'
)

data = [trace1, trace2]
layout = go.Layout(
    barmode='group'
)
Run Code Online (Sandbox Code Playgroud)

python python-3.x plotly plotly-dash

3
推荐指数
1
解决办法
2048
查看次数

Python plotly Dash 更新/刷新布局

我有layout从第二个模块导入的应用程序,然后在返回app.layout到此选项卡内容时将其呈现在选项卡中。我有问题,布局是用输入的默认值导入的,当我输入填充了键并在选项卡之间更改时,当我单击回输入选项卡时,值会重置为默认值“x”。我设法通过在回调中第二次声明布局来解决这个问题,但它看起来不太好,并且需要为进一步的功能编写两次布局。有我的代码:

if 'manager' not in vars():
    manager = Recognition('xx', 'xx')
    print('defining manager')

lcheck = 0
while lcheck == 0:
    layout = [
        html.Div([
            html.Div(
                [
                    html.H3("Primary API key"),
                    dcc.Input(
                        id='primary-key',
                        value=manager.api_key,
                        placeholder='Enter a value...',
                        type='text',
                        style = {"width":"50%"}
                    ),
                    html.H3("Private API key"),
                    dcc.Input(
                        id='private-key',
                        value=manager.api_secret,
                        placeholder='Enter a value...',
                        type='text',
                        style = {"width":"50%"}
                    ),


                ],
            ),
            html.Button('Submit', id='button', className='btn btn-primary'),
            html.Div(id='output-hidden')
        ])
    ]
    lcheck=1


@app.callback(
    Output('primary-key', 'value'),
    [Input('button', 'n_clicks')],
    [State('primary-key', 'value'), 
     State('private-key', 'value')]
)
def update_output(n_clicks, value1, …
Run Code Online (Sandbox Code Playgroud)

python plotly-dash

3
推荐指数
1
解决办法
8736
查看次数

Plotly / Dash - Python 如何在一段时间后停止执行?

我想在一段时间后停止我的 Dash 程序的执行(当我关闭浏览器窗口时效果更好,尽管我怀疑这是否可行)。有没有办法通过python中断它?

我已经试过放一个

sys.exit() 
Run Code Online (Sandbox Code Playgroud)

调用 app.run_server 后。据我所知很难

app.run_server
Run Code Online (Sandbox Code Playgroud)

处于无限循环中,因此我永远不会到达 sys.exit()

if __name__ == '__main__':
    app.title = 'foo'
    app.run_server(debug=False)
    sys.exit("Bye!")
Run Code Online (Sandbox Code Playgroud)

python python-3.x plotly plotly-dash

3
推荐指数
1
解决办法
9187
查看次数

从回调函数渲染数据表 - Dash

我正在创建一个带有多个选项卡的仪表板,每个选项卡触发器和 .py 文件呈现不同的 plotly 对象元素。

例如,我的回调函数返回绘图、图表,我希望返回 Datatable。

我可以使用 go.Table 渲染 Pandas 数据框,如示例所示,但不能使用 DataTable,它是更新的并提供增强的用户体验。

import pandas as pd
import dash
from dash.dependencies import Input, Output, State
import dash_html_components as html
import dash_core_components as dcc
import plotly.plotly as py
from plotly import graph_objs as go
from plotly.graph_objs import *
import dash_table
import flask
from datetime import datetime as dt
from app import app


layout = html.Div([

    html.Div([

        dcc.Dropdown(
                id='select',
                options=[{'label': i, 'value': i} for i in List],
                value='abc',
                placeholder="xyz",
                style={'width': '100%'}

        ), …
Run Code Online (Sandbox Code Playgroud)

python pandas plotly plotly-dash

3
推荐指数
1
解决办法
5230
查看次数

AttributeError: 'FrozenImporter' 对象没有属性 'filename'

使用 PyInstaller 运行从 plotly-dash 代码生成的 exe 文件时,我不断收到以下错误。

AttributeError: 'FrozenImporter' object has no attribute 'filename'
Run Code Online (Sandbox Code Playgroud)

做了一些深入的检查,只能识别出当 dash 尝试导入 dash_renderer并从package.filename行检索文件名时发生的属性错误

尝试添加以下但仍然无法解决

  1. import dash_renderer添加到我的代码中
  2. 将 dash 和 dash_renderer 包文件夹复制到 dist/{app}/ 文件夹中

我的情节破折号代码

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

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

app.layout = html.Div(children=[
    html.H2(children='H-{} Meeting Dashboard'.format("SS"), style={'text-align':'center'}),
    html.Div(children=[
        html.Div('''Generated on {}'''.format(str(datetime.now())[:19]), style={'text-align':'center', 'font-size':'15px'})
        ], className='row')]
    )

if __name__ == "__main__":
    app.run_server(debug=True)
Run Code Online (Sandbox Code Playgroud)

用于生成 exe 文件的 PyInstaller 代码

\path\to\python37\python.exe -m PyInstaller app_short.py
Run Code Online (Sandbox Code Playgroud)

运行 .exe 文件时出错,遇到以下错误

my\directory>app_short.exe
2019-06-25 23:36:55 Imported all …
Run Code Online (Sandbox Code Playgroud)

python pyinstaller plotly-dash

3
推荐指数
1
解决办法
1093
查看次数

导航栏破折号到 Flask

我正在尝试创建一个 Flask 应用程序并有一个包含 Dash 应用程序的页面。Flask 应用程序将具有以下页面

 Home (/)
 Login (/login)
 Logout (/logout)
 Dashboard (/dashboard)
Run Code Online (Sandbox Code Playgroud)

只有 /dashboard 是从登录页面验证后重定向的 Dash 应用程序。一切正常。

但我需要从 /dashboard 导航栏返回到 Flask 应用程序页面。

dbc.NavbarSimple(
        children=[
            dbc.NavItem(dbc.NavLink("Home", href="/")),
            dbc.NavItem(dbc.NavLink("Logout", href="/logout")),
            dbc.NavItem(dbc.NavLink("Dashboard", href="/dashboard")),
        ],
        brand="NavbarSimple",
        brand_href="#",
        color="primary",
        dark=True,
        )
Run Code Online (Sandbox Code Playgroud)

我尝试了上面的代码,我得到了导航栏。如果我将鼠标悬停在链接上,我会得到正确的链接,例如“ http://127.0.0.1:5000/logout ”,如果我点击该链接,浏览器中 URL 上的链接也会发生变化。但是页面永远不会加载并停留在同一个仪表板页面上。

有没有人遇到过类似的问题?我正在使用 Chrome 并尝试使用 IE。

python flask python-3.x plotly-dash

3
推荐指数
1
解决办法
721
查看次数

Plotly-Dash 中元素的定位

我制作了一个基本的仪表板,如下所示,本文底部附有工作的最小示例。我想(但不知道如何)将滑块和(当前硬编码为 500 像素)居中放置大约 80% 的图形宽度,以响应浏览器窗口大小。我怎样才能做到这一点?谢谢!

[元信息:我很感激有关在哪里寻找/如何搜索此类主题的建议;我似乎在谷歌上搜索错误的东西,并且很难将 Dash 文档的各个部分放在一起] [在此处输入图片说明] 1

import dash
import dash_table
import dash_daq as daq
from dash.dependencies import Input, Output, State
import dash_core_components as dcc
import dash_html_components as html
import plotly.graph_objs as go
import numpy as np

# pydata stack
import pandas as pd
from sqlalchemy import create_engine

def makeplot(slider):
    gobar=[go.Bar(
                x=[1,2,3],
                y=[1,slider,5],
                name='I am {}'.format(slider)) ]
    content= {
            'data':gobar,
            'layout':dict(title='Mygraph')
            }
    return content

## layout
external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']
app = dash.Dash(__name__, external_stylesheets=external_stylesheets)

## app
app.layout …
Run Code Online (Sandbox Code Playgroud)

html positioning slider plotly-dash

3
推荐指数
1
解决办法
3102
查看次数