1
votes

I have been wondering what are the actual differences between Plotly and Plotly Dash in terms of performance. For an example, there is a functionality called "webgl" which allows GPU to render the data points on the graph in stead of a traditional SVG ("webgl" can be used both on Plotly & Plotly Dash). The problem with the "webgl", it can only be used on scatter points (bars, candlesticks, etc).

If I were to pull candlestick data (100,000 candles or more) on either Plotly or Plotly Dash, I see some performance issues such as significantly reduced interactivity and lag.

Is there any difference between Plotly and Plotly Dash? If there is, then what are the ways to increase the performance issue?

1

1 Answers

2
votes

Well plotly dash is a deployment platform for analytical applications. Vanilla plotly is a graphing library.

Its sort of difficult to compare the two in terms of performance because they serve different purposes. Obviously the overhead of dash is more intensive because its hosting a web server that will most likely have automated update and interaction features.

From my personal use, vanilla plotly graphs can be embedded in html manually for an offline scenario, but the ability for complete interaction between multiple features is not possible.

As for improving the performance of either, that mainly comes down to optimization techniques within your own code.

Plotly's documentation and forums are surprisingly good if you have specific queries. https://plotly.com/python/ https://dash.plotly.com/introduction

Edit: I also forgot to mention that dash enterprise (plotly's paid service) has GPU acceleration support, but the license is pretty expensive.