Графическое изображение Da sh не отображается в браузере, а отображается в записной книжке Jupyter python - PullRequest
0 голосов
/ 19 января 2020

У меня есть следующий код:

fig = go.Figure()

# Constants
img_width = 600
img_height = 400
scale_factor = 0.5

# Add invisible scatter trace.
# This trace is added to help the autoresize logic work.
fig.add_trace(
    go.Scatter(
        x=[0, img_width * scale_factor],
        y=[0, img_height * scale_factor],
        mode="markers",
        marker_opacity=0
    )
)

# Configure axes
fig.update_xaxes(
    visible=False,
    range=[0, img_width * scale_factor]
)

fig.update_yaxes(
    visible=False,
    range=[0, img_height * scale_factor],
    # the scaleanchor attribute ensures that the aspect ratio stays constant
    scaleanchor="x"
)

# Add image
fig.add_layout_image(
    go.layout.Image(
        x=0,
        sizex=img_width * scale_factor,
        y=img_height * scale_factor,
        sizey=img_height * scale_factor,
        xref="x",
        yref="y",
        opacity=1.0,
        layer="below",
        sizing="stretch",
        source="logo.png")
)

# Configure other layout
fig.update_layout(
    width=img_width * scale_factor,
    height=img_height * scale_factor,
    margin={"l": 0, "r": 0, "t": 0, "b": 0},
)
fig.show()

, когда я делаю это на ноутбуке, изображение отображается. Но когда я пытаюсь в браузере, ничего не отображается. Я прилагаю скриншот для справки. Это просто вместо изображения отображается пустой блок. Я приложил код макета приложения для справки. Есть идеи, почему? Мой код для отображения в браузере:

app.layout = html.Div(style={'backgroundColor': 'white'},
children=[

    #Title
    html.Div(html.H1(children="My Dashboard "))

    #Generate Dash table

    ,dcc.Graph(figure=fig),



                    ])
```[![Screenshot][1]][1]


  [1]: https://i.stack.imgur.com/9EJ9W.png

1 Ответ

0 голосов
/ 19 января 2020

Я решил это. Я использовал совершенно другой подход

image_filename = 'unilogo.png'
encoded_image = base64.b64encode(open(image_filename, 'rb').read())
app.layout = html.Div([
html.Img(src='data:image/png;base64,{}'.format(encoded_image.decode()))
])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...