Brought to you by NumFOCUS Foundation and O’Reilly Media Inc.
The official Jupyter Conference
August 22-23, 2017: Training
August 23-25, 2017: Tutorials & Conference
New York, NY

Jupyter widgets: Interactive controls for Jupyter

Sylvain Corlay (QuantStack), Jason Grout (Bloomberg)
9:00am–12:30pm Wednesday, August 23, 2017
Jupyter subprojects
Location: Concourse B Level: Beginner
Average rating: ****.
(4.80, 5 ratings)

Who is this presentation for?

  • Jupyter Notebook users

Prerequisite knowledge

  • A working knowledge of the Jupyter Notebook and Python
  • Familiarity with JavaScript

Materials or downloads needed in advance

  • A laptop

What you'll learn

  • Learn how to use Jupyter widgets to build moderately complex user interfaces to aid in interactive computing
  • Understand the rich ecosystem of custom controls and how to start building your own custom controls

Description

Jupyter widgets are powerful tools for building user interfaces with graphical controls, such as sliders and text boxes, inside a Jupyter notebook. Interactive widgets can also be rendered in Sphinx documentation, on nbviewer, and on static web pages. But Jupyter widgets are more than a collection of controls. They are also a framework that makes it easy to build custom GUI controls in the notebook. Examples of custom widget packages include libraries for interactive 2d charting (bqplot), 3D graphics (pythreejs, ipyvolume), mapping (ipyleaflet), and more.

Sylvain Corlay and Jason Grout offer an overview of the functionalities provided by the base package, including the collection of interactions available in ipywidgets, styling and layout abilities, embedding widgets in contexts other than the notebook, and using the @interact automatic GUI generation tool. Sylvain and Jason then explore some of the popular widget libraries built upon Jupyter widgets, showing how these tools can be used to author interactive data visualization dashboards that can be distributed, before walking you through authoring such a dashboard by assembling simple controls and visualization widgets in nested layouts and building a simple widget wrapping an existing JavaScript control.

Photo of Sylvain Corlay

Sylvain Corlay

QuantStack

Sylvain Corlay is the founder of QuantStack and a quant researcher specializing in stochastic analysis and optimal control. Previously, Sylvain was a quant researcher at Bloomberg LP and an adjunct faculty member at Columbia University and NYU. As an open source developer, Sylvain mostly contributes to Project Jupyter in the area of interactive widgets and lower-level components such as traitlets. He is also a member of the steering committee of the project. Sylvain is also a contributor to a number of other open source projects for scientific computing and data visualization, such as bqplot, pythreejs, and ipyleaflet, and coauthored the xtensor C++ tensor algebra library. He holds a PhD in applied mathematics from University Paris VI.

Photo of Jason Grout

Jason Grout

Bloomberg

Jason Grout is a Jupyter developer at Bloomberg, working primarily on JupyterLab and the interactive widget system. Previously, Jason was an assistant professor of mathematics at Drake University in Des Moines, Iowa. Jason co-organizes the PyDataNYC Meetup. He has also been a major contributor to the open source Sage mathematical software system for many years. He holds a PhD in mathematics from Brigham Young University.