Dash by Plotly看起来是Python开发人员创建交互式Web应用程序的好方法,无需学习Javascript和前端Web开发。另一个具有类似目标和范围的伟大项目是Jupyter Dashboards。
各自的优点和缺点是什么?
特别是在多用户部署中?我还发现Plotly文档很不清楚究竟什么是开源,以及数据是否上传到他们或者是否可以离线完成绘图?底层的Plotly库显然有两种模式,但Dash运行的模式是什么?
免责声明:我写了Dash :)
我建议你试试这两个。短跑大约需要30分钟才能穿过tutorial。
我还建议退房:
Dash有一些高级功能(这些功能在announcement letter中有更详细的介绍)
callbacks
”将交互式组件(下拉列表,图形,滑块,文本输入)与您自己的Python代码绑定在一起。Graph
组件是交互式的,允许Dash应用程序作者编写响应于在图表上悬停,单击或选择点的应用程序。我还发现Plotly文档很不清楚究竟什么是开源,以及数据是否上传到他们或者是否可以离线完成绘图?
听起来这是指plotly.py
图形库。这是一个独立的库,而不是Dash。两个库都使用MIT许可的plotly.js
库来创建图表。 plotly.js
不向剧情服务器发送任何数据 - 它完全是客户端的。
plotly.py
库包括将数据发送到您的在线图表帐户以进行托管,共享和编辑图表的方法,但它完全是选择加入的。同样,plotly.py
是一个独立的库,而不是Dash
。 plotly.py
用于交互式图形,Dash
用于创建交互式应用程序(可包括图表)。
特别是在多用户部署中?底层的Plotly库显然有两种模式,但Dash运行的模式是什么?
好吧,对于一个jupyter仪表板是免费的,情节仪表板,我会假设使用ploty库,其中jupyter仪表板可以使用你想要的模块/库。我今天刚刚完成了一个jupyter仪表板来汇总来自我们所有CI系统的信息。这非常容易,老实说很有趣。一旦获得一个或两个数据源,就可以轻松添加新的或添加新的小部件,同时添加控件小部件。