如何将绘制的仪表板应用程序导出为html独立文件,以便与他人共享?

2022-02-24 00:00:00 python plotly plotly-dash

问题描述

我已经构建了一个情节互动的仪表板,正在寻找一种方法来将此应用程序导出为HTML格式,并与其他人共享。

对我有什么提示吗?

我已搜索过,大多数答案会将我转移到以下链接。

https://plot.ly/python/getting-started-with-chart-studio/

我试着把:

import plotly.io as pio

pio.write_html(app, file='hello_world.html', auto_open=True)

在我的app.py后面:

if __name__ == "__main__":
    app.run_server(debug=True, port=8052)

但它不起作用。


解决方案

所以我认为您需要的答案是&不能这样做。

要澄清将仪表板转换为HTML的重复要求,请执行以下操作:

HTML是一种标记语言;它以美观的方式显示文本,您可以使用CSS提高美感。

交互性就像仪表板一样,onclick()会因为CSV文件被重新查询、筛选或重新计算而导致视觉效果发生变化,这就是服务器端给HTML/CSS/JavaScript前端带来的效果。

不能仅在HTML文件中拥有完全封装的具有交互性的仪表板。您必须将服务器端逻辑带到桌面上。这就是为什么大家都提到Heroku、AWS等的原因。

现在,如果您的仪表板不是交互式的,并且它实际上只是一堆具有一些基本悬停效果的静电视觉效果,那么一个独立的Html文件可以读取包含悬停在准备好的文本上的SVG。这就是ploly的write_html所做的事情(我的理解是plotly.offline.lot只是在幕后或类似的情况下使用它)。

其他人提到的要点,在这里复制:

https://gist.github.com/ybressler/e0d40e63a5f35cf2dda65378333c6436

仅显示HTML、仪表板和报价;的限制。您可以显示/隐藏和悬停在点上,但如果没有服务器端或隐藏在某个位置的非常臃肿和复杂的显示/隐藏逻辑,则不能合并更改值的滑块。

相关文章