Dash 应用程序未在浏览器上显示 JPG 图像

问题描述 投票:0回答:1

我的图像文件夹中有图像。我想在浏览器上的 Dash 应用程序中显示这些内容。

这是我使用的代码:

    import dash
    from dash import Dash, html
    import os

    asst_path = os.path.join(os.getcwd(), "images")
    app= Dash(__name__, assets_folder=asst_path)
    print(f"{asst_path}/img1.jpg")
    app.layout = html.Div([
        html.Img(src=app.get_asset_url(f"http://{asst_path}/img1.jpg")),
        html.Img(src=app.get_asset_url(f"{asst_path}/img2.jpg"))
    ])

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

但是图像不显示。

链接here指出我还需要通过http提供资源:默认情况下,Dash会自动提供应用程序根目录下的assets文件夹中包含的所有文件,但我不确定它是什么是我做错了。感谢您的帮助

python image plotly-dash
1个回答
0
投票

Dash 自动提供资产文件夹中的所有文件。所以在-app.get_asset_url()中,你只需要传递文件名,而不是完整路径或URL。

import dash
from dash import Dash, html
import os

asst_path = os.path.join(os.getcwd(), "images")
app= Dash(__name__, assets_folder=asst_path)

# Correct usage of app.get_asset_url()
# Replace with your image filename
image_filename = 'Figure_1.png'  
image_src = app.get_asset_url(image_filename)

app.layout = html.Div([
    html.Img(src=image_src),
])

if __name__ == '__main__':
    app.run_server(debug=True)
© www.soinside.com 2019 - 2024. All rights reserved.