Has anyone tried using Dash Plotly to make a mobile app?

Viewed 2156

Has anyone tried using Dash to make a mobile app?

I found it very useful to browse the Dash page on my phone, but I don’t want to enter Urls and log in every time.

And if it’s a mobile app, whether embedded or native, there are more features that can be implemented.

2 Answers

From my experience with dash, its not a current feature unfortunately.

To clarify plotly and dash have two different types of interaction. The vanilla plotly graphing library allows you to hover, zoom, pan,..etc. Dash is more about complete interaction between multiple graphs.

Dash is a web app framework, so it can't be a native app as the interaction capabilities come from the web app functionality. People have built hybrid apps using dash but the requests still go through your own dedicated dash app, which is hosted through the web browser. So in my perspective you're just doing redundant work that is done by plotly. That being said dash code can be made mobile friendly so (in my humble opinion) that would be a better route. But from colleagues that have explored this route, the click, hover, select events that are what makes dash so appealing, do not work very well without the precision of a mouse cursor.

Last point, if the vanilla plotly interaction is the only degree of interaction needed then those graphs can be embedded into a native app because they are offline.

It could be done, though perhaps there not an out-of-the-box solution for that purpose. But Plotly Dash is built with ReactJS, of which the "mobile version" is React Native.

ReactJS vs React Nativeenter link description here.

Having said that, consider not using a mobile application that you have to actually download (i.e. an APK) but instead a web app suitable for mobile devices. Compare it to having the Twitter app installed vs opening Twitter.com on your device. It "feels almost the same", and you don't have to download anything.

I recommend reading about Progressive Web Apps.

Example of PWA.

Related