python - 如何将绘图仪表板应用程序导出到 html 独立文件以与其他人共享?
问题描述
我已经构建了一个交互式仪表板,并且正在寻找一种将这个应用程序导出为 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 来提高美观度。
像仪表板这样的交互性的想法是,由于重新查询或过滤或重新计算 csv 文件,因此 onClick() 会导致视觉效果发生变化,这就是服务器端为 HTML/CSS/JavaScript 前端带来的东西。
您不能仅在 HTML 文件中拥有一个具有交互性的完全封装的仪表板。您必须将服务器端逻辑带到表中。这就是为什么每个人都提到 Heroku、AWS 等的原因。
现在,如果您的仪表板不是交互式的,它实际上只是一堆带有一些基本悬停效果的静态视觉效果;然后一个独立的 HTML 文件可以读取包含悬停在准备好的文本上的 SVG。这就是 plotly 的 write_html 所做的(我的理解是 plotly.offline.plot 只是在幕后使用它或类似的东西)。
其他人指出的要点在这里重复:
https://gist.github.com/ybressler/e0d40e63a5f35cf2dda65378333c6436
仅显示 HTML“仪表板”的限制。您可以显示/隐藏和悬停在点上,但是如果没有服务器端或隐藏在某处的非常臃肿和复杂的显示/隐藏逻辑,则不能合并更改值的滑块。
推荐阅读
- java - 直到鼠标悬停在java中按钮才显示
- html - 具有粘性标题重叠问题的表
- python - 使用数字列表在 pd.DF 中缩放数字的函数
- vue.js - 如何在 vuetify 的 Window 组件中实现 touch prop?
- python - Python:有没有办法在列表中指定的数据框的所有列上分别应用函数?Pyfinance 软件包
- javascript - 正确定位 Modal 而不重构代码 React
- excel - MAX 和 COUNTIFS
- spring-boot - 如何应对 Spring Boot 2.2.0 中的 x-forwarded-headers?(反向代理背后的Spring Web MVC)
- neural-network - Cupy 错误:cudaErrorIllegalAddress - 遇到非法内存访问
- sql - Reg:内部连接查询