April 4, 2021python plotly jupyter jupyterlab dash dashboard visualization
Plotly is an incredibly useful tool for creating visualizations. It accepts data from a Pandas Dataframe and creates interactive visualizations. Plotly also released Plotly Express which is a higher level wrapper for Plotly. What’s nice is one can start with Plotly Express and go down to Plotly if one need’s more powerful features.
$ python3 -m venv venv
$ source venv/bin/activate
$ python3 -m pip install jupyter jupyterlab
$ sudo apt update
$ sudo apt install nodejs npm -y
$ jupyter labextension install jupyterlab-plotly
$ jupyter lab build
$ jupyter lab .
Plotly/Plotly Express Offline Mode In A Jupyterlab Session ¶
In order to use Plotly/Plotly Express with a Jupyter Lab session one must get Plotly configured in offline mode and have it display its plots inline. Here “offline” mode means Plotly will not upload one’s plots to Plotly’s Chart Studio service.
import plotly.offline as pyo import plotly.express as px # Set notebook mode to work in offline pyo.init_notebook_mode()
Dash In A Jupyterlab session ¶
import dash from jupyter_dash import JupyterDash import dash_html_components as html app = JupyterDash(__name__) app.layout = html.Div(children = [ html.H1("The Drunken Sailor Problem"), html.H2("A simulated exploration, visualization and dashboard") ]) app.run_server( mode="jupyterlab", port= 8050, dev_tools_ui=True, debug=True, dev_tools_hot_reload =True, threaded=True )
This will open a new tab in your Jupyterlab session and display your dashboard. You can rerun the cells to update the dashboard.
At this point you can use Plotly/Plotly Express and Dash inside a Jupyter notebook. Enjoy!