SciPy 2023

Interactive data visualization with Bokeh
07-11, 13:30–17:30 (America/Chicago), Classroom 105

Bokeh is a library for interactive data visualization. You can use it with Jupyter Notebooks or create standalone web applications, all using Python. This tutorial is a complete guide to Bokeh, where we start with a basic line plot and step-by-step make our way to creating a dashboard with several interacting components. This tutorial will be helpful for scientists who are looking to level-up their analysis and presentations, and tool developers interested in adding custom plotting functionally or dashboards.

Bokeh is a Python library for creating interactive data visualizations. Bokeh allows you to create plots that can be displayed in a web browser, without needing to write HTML and JavaScript. In development for over 10 years, Bokeh has become a core tool for Python data science workflows, used for both exploratory analysis and in presentations. It is actively used in scientific domains including bioscience, geoscience, and astrophysics. Moreover, other useful libraries in the PyData ecosystem, like Dask, ArViz, and the Holoviz tools, build custom applications and workflows with Bokeh.

In this tutorial, you’ll learn everything you need to know to create beautiful and powerful interactive plots from scratch. We’ll start by introducing core Bokeh concepts, creating simple static plots like line and bar charts, and customizing them. We’ll then gradually introduce layers of interactivity, create specialized plots like geographic maps, and discuss new features like contour plots. By the end, you will be able to create a complete interactive dashboard using Bokeh.

This tutorial is presented by Bokeh core team members and is fully hands-on with several examples and exercises in every section. We hope to enable more people, especially scientists and tool developers, to create pretty yet powerful visualizations.


Required: Beginner-intermediate knowledge of Python programming, and basic understanding of data science tools like NumPy, pandas, and Jupyter Notebooks.

Nice to have: Basic knowledge of Git, GitHub, and conda environments is needed for running the tutorial locally. We’ll also host the tutorial using the Binder project that participants can use from the browser.

Installation Instructions

Pavithra is a Developer Advocate at Quansight, where she works to support the PyData community. She also contributes to the Bokeh and Dask projects; and has helped administrate Wikimedia’s outreach programs in the past. In her spare time, she enjoys a good book and hot coffee. :)

This speaker also appears in:

Ian Thomas is a Senior Software Engineer at Anaconda. Originally an ocean modeller, Ian has many years' experience analysing and visualising data. Ian is an Open Source contributor and core maintainer of a number of libraries, most notably Bokeh, Datashader and fsspec. Ian is British and drinks a lot of tea.

Timo is a technical writer and project manager at makepath. He started contributing to Bokeh in 2020 and loves to help others succeed in the world of Open Source.

Victoria is the Director of Operations at makepath and has enjoyed contributing to Bokeh over the last year. She enjoys traveling and working on the go as well as mentoring youth in her community.