Jupyter widgets enable interactive data visualization in the Jupyter notebooks.
Notebook Widgets
Notebooks come alive when interactive widgets are used. Users can visualize and control changes in the data. Learning becomes an immersive, plus fun, experience. Researchers can easily see how changing inputs to a model impacts the results.
A library for creating simple interactive maps with panning and
zooming, ipyleaflet supports annotations such as polygons,
markers, and more generally any geojson-encoded geographical
data structure.
Example
Installation
With conda:
With pip:
If you are using the classic Jupyter Notebook < 5.3 you need to run this extra command:
If you are using JupyterLab ≤ 2, you will need to install the JupyterLab extension:
nglview
A Jupyter widget to interactively view molecular structures and trajectories.
Example
Installation
With conda:
With pip:
K3D-Jupyter
K3D lets you create 3D plots backed by WebGL with
high-level API (surfaces, isosurfaces, voxels, mesh, cloud points, vtk objects, volume renderer,
colormaps, etc). The primary aim of K3D-jupyter is to be easy for use as stand alone package like
matplotlib, but also to allow interoperation with existing libraries as VTK. The power of ipywidgets
makes it also a fast and performant visualisation tool for HPC computing e.g. fluid dynamics.
With pip:
If you are using JupyterLab, you will need to install the JupyterLab extension:
bqplot
A 2-D interactive data visualization library implementing the
constructs of the grammar of graphics, bqplot provides a simple
API for creating custom user interactions.
Example
Installation
With conda:
With pip:
If you are using the classic Jupyter Notebook < 5.3 you need to run this extra command:
If you are using JupyterLab ≤ 2, you will need to install the JupyterLab extension:
pythreejs
A 3-D visualization library enabling GPU-accelerated computer
graphics in Jupyter.
Example
Installation
With conda:
With pip:
If you are using the classic Jupyter Notebook < 5.3 you need to run this extra command:
If you are using JupyterLab ≤ 2, you will need to install the JupyterLab extension:
ipyvolume
3-D plotting for Python in the Jupyter notebook based on IPython widgets using WebGL.
Example
Installation
With conda:
With pip:
If you are using JupyterLab, you will need to install the JupyterLab extension:
BeakerX
BeakerX includes widgets
for interactive tables, plots, forms, Apache Spark, and more.
The table widget automatically recognizes pandas dataframes
and allows you to search, sort, drag, filter, format,
select, graph, hide, pin, and export to CSV or
clipboard. This makes connecting to spreadsheets quick and
easy.
The table widget, shown below, is so fast because it's implemented with the PhosphorJS Data Grid,
part of Jupyter Lab's architecture.
Example
Installation
With conda:
With pip:
jupyter-gmaps
Gmaps lets you
embed interactive Google maps in Jupyter notebooks. Visualize
your data with heatmaps, GeoJSON, symbols and markers, or plot
directions, traffic, or cycle routes. Let users draw on the map
and capture the coordinates of the markers or polygons they are
placing to build interactive applications entirely in Python.
Example
Installation
With conda:
With pip:
If you are using JupyterLab, you will need to install the JupyterLab extension:
widget cookiecutters
The Jupyter widget framework is extensible and enables developers to create custom
widget libraries and bindings for visualization libraries of the JavaScript and TypeScript ecosystem.
The cookiecutter projects help widget authors get up to speed with the
packaging and distribution of Jupyter interactive widgets, in
JavaScript and
TypeScript.
They produce a base project for a Jupyter interactive widget library following the current best practices.
An implementation for a placeholder "Hello World" widget is provided. Following these practices will
help make your custom widgets work in static web pages (like the examples of this page) and be compatible
with future versions of Jupyter.
perspective
Perspective is an interactive visualization component for large, real-time datasets. Originally developed for J.P. Morgan's trading business, Perspective makes it simple to build real-time & user configurable analytics entirely in the browser, or in concert with Python and/or Jupyterlab.
Perspective can be used to create reports, dashboards, notebooks and applications, with static data or streaming updates via Apache Arrow..