Panel: Turn any notebook into a deployable dashboard
Philipp Rudiger
Over the last decade Jupyter notebooks have become an incredibly powerful tool for performing analyses and visualizing data. Once an analysis is done it often has to be shared with a wider audience, either within an organization or with the wider public, but this step often requires an entirely different set of tools and skillset. Panel is a new, open-source Python library built to easily wrap the outputs of an analysis, combine them with widgets and then lay them out as an interactive app or dashboard. This enables faster iteration cycles within organizations and ensures users without in-depth familiarity with web programming can develop and deploy complex dashboards with minimal code.
Panel natively supports a wide range of plotting tools and many other types of data making it trivial to work with the tools users are already familiar with. A complex interactive Panel-based dashboard is typically many times shorter than the equivalent Dash or Bokeh code, focusing on expressing relationships between widgets, computation, and visualizations directly. At the same time Panel is not limited to building simple apps and can be used to visualize complex, multi-stage analysis pipelines, provides full styling flexibility using CSS and Bokeh themes and has the ability to dynamically resize to the size of the browser window.
Once an application is built either in a Python script or notebook it can trivially be deployed as a standalone app using Bokeh Server without any change in behavior. Alternatively, Panel apps can be exported to static HTML files by defining Javascript based interactions or even recording and embedding the app's state space, making it possible to share interactive visualizations as self-contained files.
In the talk we will discover some of the core ideas behind Panel, go through the process of making an existing Jupyter notebook deployable as a dashboard and finally look at a number of case studies of more complex dashboards. With Panel, your analyses and visualizations can now very easily leap from your notebook into the real world!
Philipp Rudiger
Affiliation: Anaconda Inc.
I am a Software Engineer at Anaconda, Inc. developing open-source and client-specific solutions for data management, visualization and analysis. I am the author of the open source dashboarding and visualization libraries Panel, hvPlot and GeoViews and one of the core developers of Bokeh and HoloViews. I have a strong background in the Python data science stack with experience in visualization, ML and numerical analysis. Before making the switch to software development I completed my PhD and Masters in Computational Neuroscience at the University of Edinburgh working on biologically inspired, deep and recurrent neural network models of the mammalian visual system.