Friday October 29 12:00 PM – Friday October 29 12:30 PM in Talks II

Build polished, data-driven applications directly from your Pandas or XArray pipelines

Philipp Rudiger

Prior knowledge:
Previous knowledge expected
Pandas or Xarray usage, beginner level or above

Summary

What if building a data-science app could be as easy as replacing arguments in your data pipelines with widgets? Panel and hvPlot .interactive allow you to leverage the APIs you already know (Pandas, Xarray, Dask, cuDF, etc.) to build everything from one-off interactive applets all the way up to full-featured polished web applications.

Description

What if building a data-science app out of your analysis code could be as easy as replacing any argument with a widget? By combining the power of PyData APIs you already use (whether Pandas, Xarray, Dask, cuDF, etc.), the new hvPlot .interactive API, and Panel’s ability to iteratively build polished web applications, you can now build reactive, data-driven apps and dashboards in just a few lines of code.

Instead of having to learn how to write and debug complex callbacks and event loops, with .interactive you build a reactive application using the same data-handling APIs you are already comfortable with. With .interactive, hvPlot captures your specified pipeline of operations along with which widgets to use for each call, and replays the pipeline whenever the corresponding widget value changes. For instance, you can explore a DataFrame one group at a time by filtering using an interactive selector widget: df.interactive[df.type == selector].head(). Each time the selector value changes, hvPlot will re-run your specified operations to get a new result to be displayed by Panel.

This approach scales from simple expressions to long or complex data-transformation pipelines leading to any supported Panel output type, from simple text to BI indicators, tables, and plots (Bokeh/Matplotlib/Plotly/Altair/DeckGL and many more).

In your favorite development environment (whether that is Jupyter(Lab) or your favorite editor), you can quickly and iteratively integrate these data-driven components into a full application. As a final step, you can easily combine the power of these APIs with the inbuilt Panel templates to build polished-looking web applications that are easy to deploy on your favorite web-hosting service.