3 ms·
Plotly Dash and OmniSciDB for real-time data visualization
- boarnoah 7y agoI used Dash pretty extensively in 2018 (so bear in mind things have changed some since then). It's a great tool but has some downsides compared to using d3, a chart library or even PlotlyJS directly. * There is no good path to invert Dash and Flask relationship so that you can embed Dashboards into the larger context of a Flask application. Which really limits it for single standalone dashboards. * The JSON serialization and dash components are hard to extend or customize as an end-user (without making changes to the library directly). So you'll quickly run into a barrier when extending for anything custom. So it's a great tool, you can build responsive dashboards (that work with great Python libs such as Pandas for the processing) very quickly, but IMO its not suitable for embedding dashboards into other applications (which TBF isn't their goal).
- jclay 7y agoI've created a few projects with Dash in the past and it's amazing how quick it is to get something interactive up in about 20 minutes. It definitely has a narrow set of use cases, but I had that Rails ah-ha moment for the first time in a while where 80% of what I was trying to do worked out of the box with no configuration. Compare this with creating a Flask backend server and React frontend with webpacker, etc.
- randyzwitch 7y agoOP Definitely agree with you both. I chose Dash because I knew Python, but JavaScript is just something that never seems to click with me. They definitely make it easy for the pandas-using, wants-one-screen-and-a-few-dropdowns type of person to get started.
- ad404b8a372f2b9 7y agoI've used Dash professionally for the past few years and I think it's mostly terrible. It's really easy to pick up and you can get an interactive dashboard going quickly but past that it's useless. The API is completely undocumented, all you get is a few examples which you can't generalize to your use-case because none of their functions' parameters are described anywhere, on top of that they introduce breaking changes seemingly every version. Some plots are only discoverable through obscure forum posts by random users. Unless you plan to reverse engineer the library don't bother for long or medium term projects. In the end I was so frustrated I dumped it and made a custom dashboarding library which serves Matplotlib figures from a http server (everyone says their documentation is terrible but I think it's alright: it's complete and it's mature).
- JPKab 7y agoThis. I worked with and subsequently took dash apart for a huge project. A super promising architecture, but major challenges in implementation.
- Osmium 7y agoI wouldn't say it's terrible. There's a distinction between Dash itself (very general/customizable framework) and Plotly charts (agreed, some chart types are poorly documented). Dash >= 1.0 has been pretty stable and well-documented without many breaking changes imo.