Start course
1h 33m

Bokeh is an interactive visualization library in Python that provides visual artefacts for modern web browsers. In this course, we're going to have a look at the fundamental tools that are necessary to build interactive plots in Python using Bokeh.

Bokeh exposes two interface levels to users: bokeh.plotting and bokeh.models, and this course will focus mainly on the bokeh.plotting interface. 

We'll start things off by exploring two key concepts in Bokeh: Column Data Source and Glyphs. Then we'll move on to looking at different aspects related to the customization of a bokeh plot, as well as focusing on how to introduce interactivity into a Bokeh object.

You'll also learn about using inspectors to report information about the plot and we'll also investigate different ways to plot multiple Bokeh objects in one figure. We'll round off the course by looking at plot methods for categorical variables.

Learning Objectives

  • Learn about Columns Data Sources and Glyphs in Bokeh and how they are used
  • Learn how to customize your plots and add interactivity to them
  • Understand how inspectors can be added to plots to provide additional information
  • Learn how to plot multiple Bokeh objects in one figure
  • Understand the plot methods available for categorical variables

Intended Audience

  • Data scientists
  • Anyone looking to build interactive plots in Python using Bokeh


To get the most out of this course, you should have a good understanding of Python. Before taking this course, we also recommend taking our Data Visualization with Python using Matplotlib course.


The GitHub repo for this course can be found here: 


We have reached the end of this course. I hope you have enjoyed it as much as I did. That was a significant journey into the Bokeh library, and hence, let's just now recap what we have covered in this course.

First, we investigated the Bokeh plotting interface, and understood the importance of glyphs, which are the fundamental building blocks of any Bokeh object. We also saw how to create a Column Data Source, and how the Bokeh syntax changes when we use it inside a glyph.

We also have covered customization in-depth: from simple aesthetics features to annotations, you have learned how to customize your plot. We have also seen how to plot multiple bokeh objects in a single figure: we have used two methods, namely row and column, which are used to create a layout of plots.

A fundamental aspect we covered is interactivity inside any bokeh object. So, we covered the Hover tool, which is a passive tool to add multiple information over a glyph. 

To deal with multiple plots, we can also employ interactive legends, using the mute option to dynamically choose which series to show in the plot. Finally, we covered methods to deal with categorical variables in bokeh.

Thank you for having watched this course. If you have any feedback at all, please contact us at Thank you. 

About the Author
Learning Paths

Andrea is a Data Scientist at Cloud Academy. He is passionate about statistical modeling and machine learning algorithms, especially for solving business tasks.

He holds a PhD in Statistics, and he has published in several peer-reviewed academic journals. He is also the author of the book Applied Machine Learning with Python.