Python Bokeh

A complete guide on creating beautiful plots and data dashboards on the browser using the Python Bokeh library.

Last updated 2022-01-10 | 4.4

- Build advanced data visualization web apps using the Python Bokeh library.
- Create interactive modern web plots that represent your data impressively.
- Create widgets that let users interact with your plots.

What you'll learn

Build advanced data visualization web apps using the Python Bokeh library.
Create interactive modern web plots that represent your data impressively.
Create widgets that let users interact with your plots.
Learn all the available Bokeh styling features.
Integrate and visualize data from Pandas DataFrames.
Create dynamic graphs that plot real-time data.
Plot time-series data.
Integrate your data visualization apps with Flask apps.
Deploy the apps in live servers.
Learn how to troubleshoot Bokeh apps.

* Requirements

* A working computer (Windows
* Mac
* or Linux)
* Basic knowledge of Python

Description

If you love Python and want to impress your clients or your employer with impressive data visualization on the browser, Bokeh is the way to go. This course is a complete guide to mastering Bokeh, a Python library for building advanced and data dashboards containing beautiful interactive visualizations. The course will guide you step by step from plotting simple datasets to building rich and beautiful data visualization web apps that plot data in real-time and allow web users to interact and change the behavior of your plots via the internet from their browsers. 

Whether you are a data analyst, data scientist, statistician, or any other specialist who deals with data regularly, this course is perfect for you. It will give you the skills to visualize data in a way that excites your audience and eventually sells your product or your idea much easier. All you need to have to learn Bokeh is some basic prior knowledge of Python.

The course also contains exercises to help you check your skills as you progress. You will be given access to various data samples and provided with additional examples to enforce your Bokeh skills. The course is estimated to take you around four weeks to complete assuming you devote 10-20 hours/week depending on your productivity skills.

Who this course is for:

  • Anyone involved in the data industry
  • Anyone who is already familiar with Python basics

Course content

7 sections • 79 lectures

Course Introduction Preview 00:32

Get to know about a few facts about the course.

Installation Preview 00:09

Getting Help Preview 00:23

What is Bokeh Preview 02:51

A short introduction on what Bokeh library can do.

Bokeh and Bokeh Server

Creating Your First Bokeh Plot Preview 13:52

Learn to create your first web-based plot with Bokeh.

Exercise 1: Plotting triangles and circle glyphs Preview 00:09

Exercise 1: Solution Preview 00:25

Using Bokeh with Pandas Preview 04:51

Learn to feed your Bokeh charts with data from Pandas dataframes.

Exercise 2: Plotting Education Data Preview 00:12

Exercise 2: Solution Preview 00:16

Bug with the Show Method Preview 05:09

There's currently an issue with the show() method explained in this lecture.

Using the Bokeh Documentation Preview 04:12

Get the links to the official documentation and learn how to use the documentation.

Section Introduction Preview 03:03

Get to know with this section.

Note Preview 00:15

Creating an Initial Plot Preview 03:13

Let's create a basic plot first before adding styling to it in the next lectures.

Figure Background Preview 05:43

Learn how to customize the background style of a Bokeh chart.

List of Colors Preview 00:20

Here's a complete list of colors you can use with Bokeh charts.

Title Preview 03:10

Learn how to customize the title of a Bokeh chart.

List of Text Fonts Preview 00:08

Here is a list of text font styles you can use in Bokeh.

Axes: Custom Styling Preview 08:01

Learn how to customize the axes style of a Bokeh chart.

Axes: Custom Geometry Preview 08:14

Learn how to customize the axes geometry of a Bokeh chart.

Axes: Categorical Data Preview 02:50

Learn how to plot categorical data.

Grid Preview 02:23

Learn how to customize the grid of a Bokeh chart.

Tools Preview 05:26

Learn how to customize the tools of a Bokeh chart.

Glyphs Preview 09:34

Learn how to customize the plotted glyphs of a Bokeh chart.

Legend: Configuring Preview 04:46

Learn how to customize the structure of the legend.

Legend: Styling Preview 07:00

Learn how to customize the style of the legend.

Popup Windows Preview 04:47

Learn how to create pop up window messages.

Exercise 3: Summary of Section 3 Preview 00:28

Exercise 3: Solution Preview 02:29

Section Introduction Preview 01:51

Here's an introduction to this section.

ColumnDataSource Preview 16:36

Learn how to use the native data source object of a Bokeh chart.

Exercise 4: Plotting Elements of the Periodic Table Preview 00:38

Exercise 4: Solution Preview 00:35

Popup Windows with Custom HTML Preview 10:46

Learn how to extract values from a ColumnDataSource for displaying in a popup window.

Gridplots Preview 05:07

Learn how to create multiple plots in one webpage.

Exercise 5: Gridplots Preview 00:17

Exercise 5: Solution Preview 00:31

Annotations: Spans and Boxes Preview 08:26

Learn how to draw lines and boxes on top of your plot elements.

Exercise 6: Span Annotations Preview 00:20

Exercise 6: Solution Preview 00:52

Annotations: Labels and LabelSets Preview 10:29

Learn how to add annotated text to your graph and label your plot glyphs.

Exercise 7: Labels in Spans Preview 00:08

Exercise 7: Solution Preview 01:01

Section Introduction Preview 02:24

Here's an introduction to this section.

Widgets in Static Bokeh Graphs Preview 06:31

Learn how to create user widgets besides your charts.

Widgets in Interactive Bokeh Server Apps Preview 07:18

Learn how to create user widgets besides Bokeh server charts.

Select Widgets: Changing Labels Dynamically Preview 13:08

Learn how to create a Select widget that allows users to change glyph labels.

Exercise 8: Select Widgets - Drawing Spans Dynamically Preview 00:39

Exercise 8: Tips Preview 00:34

Exercise 8: Solution Preview 01:09

RadioButtonGroup Widgets: Changing Labels Dynamically Preview 09:02

Learn how to create a RadioButtonGroup widget that allows users to switch between different label sets.

Slider Widgets: Filtering Glyphs, Part 1 Preview 13:57

Learn how to create a slider that allows users to filter glyphs based on data. Part 1.

Slider Widgets: Filtering Glyphs, Part 2 Preview 05:25

Learn how to create a slider that allows users to filter glyphs based on data. Part 2.

Section Introduction Preview 00:43

Here's an introduction to this section.

Streaming Random Points and Lines Preview 14:48

Learn how to create a dynamic graph that streams points and lines in real time.

Streaming Financial Data - Designing the App Preview 04:36

Learn how to design a Bokeh web app that streams trading data.

Streaming Financial Data - Webscraping Preview 12:16

Learn how to scrape data from a trading website for feeding your real-time Bokeh web app.

Streaming Financial Data - Plotting Preview 07:38

Learn how to plot real-time trading data scraped from a website every five seconds.

Streaming Timeseries Data Preview 19:38

Learn how to stream data along a datetime axis.

User Interaction Between Real-Time Plots and Widgets Preview 14:40

Learn how create widgets that allow users to interact with a real-time Bokeh chart.

Example: Visualizing Spinning Planets Preview 00:54

Here's one more data visualization example of a mini solar system.

Introduction to Flask Preview 08:51

Get a quick introduction to the Flask web framework.

Embedding Static Bokeh Plots in Flask Preview 15:56

Learn how to embed Bokeh static plots into a Flask web application.

Embedding Bokeh Server Plots in Flask Preview 09:02

Lean how to embed Bokeh Server apps into Flask web apps.

Embedding Static Bokeh Plots in Django: Setting up a Django App Preview 06:11

You will be guided on how to create a sample Django web app where we can later embed Bokeh plots.

Embedding Static Bokeh Plots in Django: Embedding the Plot Preview 10:44

Learn how to embed a Bokeh HTML plot in an existing Django web app.

Deployment Options Preview 07:41

A summary of services where you can deploy your Bokeh apps.

Deploying Static Bokeh Plots Preview 05:07

Learn how to publish your HTML Bokeh plots on a website for free.

Deploying Interactive Bokeh Server Apps Embedded in Flask- Setting up the VPS Preview 11:32

Here is how to set up a VPS (Virtual Private Server) for deploying Bokeh Server apps embedded in Flask apps.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Installing Software Preview 07:44

Preparing the VPS by installing required software such as NGINX server, Python libraries, etc.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Configuration Files Preview 04:03

Creating configuration files that tell the server how to run the deployed app.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Uploading Files Preview 07:47

Uploading the project files into the remote server with FileZIlla.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Editing Server Files Preview 05:47

Modifying some of the uploaded files on the server.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Starting the Service Preview 02:29

Restarting the web server and finally having the app online.

Deploying Interactive Bokeh Server Apps Embedded in Flask - Troubleshooting Preview 05:30

Here is how to troubleshoot your app if it's not working.

Deploying Interactive Bokeh Server Apps as Standalone Preview 00:44

Closing Lecture Preview 00:09