Bokeh – Python Interactive Visualization Library

Bokeh is an open source interactive visualization library that targets modern web browsers for presentation. It renders plots using HTML canvas and provides many mechanisms for interactivity.

Bokeh provides elegant, concise construction of versatile graphics with high-performance interactivity over very large or streaming datasets in a quick and easy way from Python (or other languages).

Bokeh helps easily create interactive plots, dashboards and data apps.

Bokeh’s main objective is to provide approachable capability for novel interactive visualizations in a web browser. Specifically, it aims to offer users to build basic exploratory and advanced custom graphics in the style of D3.js, but also deliver this capability with high-performance interactivity over very large or streaming datasets.


  • Good set of functionality.
  • Make interactive web visualizations. Its web view and interactivity is polished and well constructed.
  • Create powerful client-side or server-side dashboards.
  • Imperative and Declarative layer.
  • 2 interface levels
    • Low-level interface that provides the most flexibility to application developers.
    • Higher-level interface centered around composing visual glyphs.
  • HTML canvas rendering.
  • Dynamic downsampling.
  • Good at handling large and/or streaming datasets.
  • Abstract rendering.
  • Server plot hosting.
  • Incredible language.
  • Several layout options for arranging plots and widgets.
  • Native support for creating network graph visualizations with configurable interactions between edges and nodes.
  • Geographical visualization including tile provider maps, Google maps, as well as support for GeoJSON data.
  • Generates RGBA-format Portable Network Graphics (PNG) images from layouts.
  • Supports replacing the HTML5 Canvas plot output with an SVG element that can be edited in image editing programs and/or converted to PDFs.
  • Variety of ways to embed plots and data into HTML documents.
  • Interact with languages other than Python.
  • Besides Python, Bokeh has interfaces in Scala, Julia, and R.

Support: User Guide, GitHub, Twitter, Mailing List
Developer: Anaconda, Inc.
License: BSD 3-Clause “New” or “Revised” License


Bokeh is written in Python. Learn Python with our recommended free books and free tutorials.

Return to Python Visualization Packages Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.