Skip main navigation

What is Bokeh?

Video on bokeh
(dinging) (mouse clicking) In this video, we will learn about what Bokeh is, when it’s used and why it’s used. Bokeh is a Python interactive visualisation library that targets modern web browsers for presentation. Bokeh provides concise construction of novel graphics with high-performance interactivity over very large or streaming datasets. Let’s look at when we can use Bokeh. Bokeh can help anyone who would like to quickly and easily create interactive plots, dashboards, and data applications. Some libraries, such as matplotlib render visualisations as images. Thus they are good for explaining concepts in a paper, slide deck or presentation. On the other hand, libraries like Bokeh allow you to create interactive graphs that your users can dive into and explore themselves.
Next, let’s take a look at some of the strengths of Bokeh. One of its strengths is that Bokeh allows you to build complex statistical plots quickly and through simple commands. Another strength of Bokeh is that it can create outputs in various mediums, like HTML, Notebook and Servers. Bokeh also offers both flexible and powerful features, which are simple while being suited for highly advanced customization. While Bokeh has several strengths, there are also some drawbacks. Like with any upcoming open source library, Bokeh is undergoing a lot of development. So the code you write today may not be entirely reusable in the future. Bokeh also has fewer visualisation options and has no 3D graphing functionality.
Now that we have explored what Bokeh is and how it’s used, let’s dive into learning about its glyph system next.

Watch the video to learn more about what Bokeh is, when it’s used and why it is used.

When to use Bokeh?

More often than not these days, your visualisations will be displayed on the web. With most web pages now supporting rich and interactive media, static visualisations can seem out of place. This is where Bokeh comes in.

Bokeh can be used to create plots with figures and charts from data and can be automatically created into web pages consisting of your charts and made interactive.

As you would have seen in the video, Bokeh works like Matplotlib in that you can create plots with figures and charts from data. But, it goes a step further by automatically creating web pages that can contain the charts and make them interactive. This includes generating the HTML to display data and the Javascript to allow interaction.

In its simplest use, Bokeh can create static HTML pages with interactive plots in them. Without too much configuration, you’ll be able to provide your readers with charts that can be panned and zoomed to examine data much more intuitively.

But, Bokeh goes beyond that!

By using Bokeh server, you can build interfaces that allow the user to query and filter data from a database and let them perform their own comparisons or drill down into the data that is most interesting to them. To get an idea of what Bokeh can build in a context specific to you, you can browse the Bokeh gallery in the link here.

Interact: Bokeh demo gallery [1]


  1. Gallery [Document]. Bokeh; [date unknown]. Available from:
This article is from the free online

Data Visualisation with Python: Bokeh and Advanced Layouts

Created by
FutureLearn - Learning For Life

Reach your personal and professional goals

Unlock access to hundreds of expert online courses and degrees from top universities and educators to gain accredited qualifications and professional CV-building certificates.

Join over 18 million learners to launch, switch or build upon your career, all at your own pace, across a wide range of topic areas.

Start Learning now