在Python中使用Shiny显示图像
我想在Python的Shiny中显示一张图片,但我在代码中找不到错误。每次打开应用并输入图片时,文件都没有上传。
以下是代码:
from pathlib import Path
from shiny import render
from shiny.express import input, ui
from shiny import App, Inputs, Outputs, Session, reactive, render, ui
from shiny.types import FileInfo
ui.page_fluid(
ui.input_file("file_input", "Upload Image"), # Add file input
ui.output_image("image")
)
@render.image
def image():
img = {"src": input.file_input(), "width": "100px"}
return img
这样我就能显示这张图片了。
1 个回答
1
看起来你缺少了一些东西,比如没有初始化这个闪亮的应用程序,页面的布局没有定义好,还有一些小的语法问题。
试试这个:
from shiny import App, render, ui
from shiny.types import FileInfo
app = App()
@app.page_fluid
def page():
input_file = ui.input_file("file_input", "Upload Image")
output_image = ui.output_image("image")
return [input_file, output_image]
@app.render.image
def render_image():
img_src = input.file_input()
img_width = "100px"
return {"src": img_src, "width": img_width}
if __name__ == "__main__":
app.run(debug=True)