Dash by Plotly looks like a great way for a Python developer to create interactive web apps without having to learn Javascript and Front End Web development. Another great project with similar aims and scope is Jupyter Dashboards.
What are the pros and cons of each?
In particular in a multi-user deployment? I also found the Plotly documentation quite unclear on what exactly is Open Source and whether the data gets uploaded to them or if the plotting can be done offline? There are clearly two modes for the underlying Plotly library but what mode does Dash operate in?
Dash by Plotly looks like a great way for a Python developer to create interactive web apps without having to learn Javascript and Front End Web development. Another great project with similar aims and scope is Jupyter Dashboards. What are the pros and cons of each? In particular in a multi-user deployment?
Actually Dash was made by Plotly's creators as a way to easily implement a web interface and create dashboards with Plotly without having to learn javascript, html and other web technologies. With Dash you don't make visualizations, you build an interface to display Plotly's visualizations.
Is Dash free? Yes. Plotly's Dash analytics application framework is also free and open-source software, licensed under the MIT license.
Plotly welcomes reports of serious security issues that substantially affect the confidentiality or integrity of user data in Dash Enterprise, Chart Studio Enterprise, and Chart Studio Cloud, as well as serious security issues that affect Dash Apps hosted on Dash Enterprise.
Disclaimer: I wrote Dash :)
I'd recommend just trying both of them. Dash takes about 30 minutes to run through the tutorial.
I'd also recommend checking out:
There are some high-level features of Dash (these are covered in the announcement letter in more detail)
callbacks
".Graph
component is interactive, allowing Dash app authors to write applications that respond to hovering, clicking, or selecting points on the graph.I also found the Plotly documentation quite unclear on what exactly is Open Source and whether the data gets uploaded to them or if the plotting can be done offline?
It sounds like this is referring to the plotly.py
graphing library. This is a separate library than Dash. Both libraries use the MIT licensed plotly.js
library for creating charts. plotly.js
doesn't send any data to the plotly server - it's completely client-side.
The plotly.py
library includes methods to send the data to your online plotly account for hosting, sharing, and editing the charts but it's completely opt-in. Again, plotly.py
is a separate library than Dash
. plotly.py
is for interactive graphing, Dash
is for creating interactive applications (which can include charts).
In particular in a multi-user deployment? There are clearly two modes for the underlying Plotly library but what mode does Dash operate in?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With