使用 plotly-dash 上传文件

Posted

技术标签:

【中文标题】使用 plotly-dash 上传文件【英文标题】:Uploading files with plotly-dash 【发布时间】:2019-05-16 18:32:05 【问题描述】:

我正在制作一个带有 plotly-dash 的应用程序来查看 *.mdf 文件(用于加载文件的 Python 库 asammdf)。我制作了一个上传组件 (https://dash.plot.ly/dash-core-components/upload) 来加载文件。我想将完整的文件名传递给 asammdf 库中的 MDF 函数,以加载文件并将数据放入图表中。但是破折号上传组件只返回文件名而不是完整路径,因此我不能在此使用 MDF 函数。 Upload 组件还将文件的内容输出为二进制字符串,但不确定如何将其传递给 MDF 函数。

有人知道解决这个问题的方法吗?

【问题讨论】:

【参考方案1】:

实际上,我发现可以使用 contents 变量。 MDF 函数(以及我假设的大多数读取函数)检查输入是“类似文件”的对象还是字符串。如果它是“类似文件”的对象,则直接从该对象中读取。内容可以如下变换:

content_type, content_string = contents[0].split(',')
decoded = base64.b64decode(content_string)
file_like_object = io.BytesIO(decoded)

【讨论】:

以上是关于使用 plotly-dash 上传文件的主要内容,如果未能解决你的问题,请参考以下文章

Plotly-dash 用户可以编辑和保存对仪表板的更改吗?

Plotly-dash 图不显示值

nodejs上传的文件如何使用

如何在使用 jQuery 上传文件之前从文件上传控件中删除文件

使用CURL上传文件

thinkphp文件上传多文件上传和单文件上传不能一起使用吗