Book Image

Hands-On Data Visualization with Bokeh

By : Kevin Jolly
Book Image

Hands-On Data Visualization with Bokeh

By: Kevin Jolly

Overview of this book

Adding a layer of interactivity to your plots and converting these plots into applications hold immense value in the field of data science. The standard approach to adding interactivity would be to use paid software such as Tableau, but the Bokeh package in Python offers users a way to create both interactive and visually aesthetic plots for free. This book gets you up to speed with Bokeh - a popular Python library for interactive data visualization. The book starts out by helping you understand how Bokeh works internally and how you can set up and install the package in your local machine. You then use a real world data set which uses stock data from Kaggle to create interactive and visually stunning plots. You will also learn how to leverage Bokeh using some advanced concepts such as plotting with spatial and geo data. Finally you will use all the concepts that you have learned in the previous chapters to create your very own Bokeh application from scratch. By the end of the book you will be able to create your very own Bokeh application. You will have gone through a step by step process that starts with understanding what Bokeh actually is and ends with building your very own Bokeh application filled with interactive and visually aesthetic plots.
Table of Contents (10 chapters)

Using WebGL to improve performance

WebGL is a JavaScript API that is available in almost every popular browser in the market. Fundamentally, the Bokeh plots that are displayed on your browser do so with the help of plugins. This could slow down the rendering of plots, especially if the dataset that is used to render these plots is huge! WebGL renders plots using a GPU, without the need for plugins.

In order to enable WebGL while rendering plots, you simply need to use the code shown here while constructing the figure of the plot:

plot = figure(output_backend = 'webgl')

The only downside to rendering the plot in WebGL is that it does not support every component that Bokeh has to offer. At the moment, only two types of glyphs are supported with WebGL rendering. They are:

  • Circle glyphs
  • Line gyphs

The markers that are supported with WebGL are as follows:

  • asterisk
  • square...