Skip to content

markschwarz/ipywidgets

 
 

Repository files navigation

ipywidgets: Interactive HTML Widgets

Version Downloads Build Status Documentation Status Join the chat at https://gitter.im/ipython/ipywidgets

ipywidgets are interactive HTML widgets for Jupyter notebooks and the IPython kernel.

Notebooks come alive when interactive widgets are used. Users gain control of their data and can visualize changes in the data.

Learning becomes an immersive, plus fun, experience. Researchers can easily see how changing inputs to a model impact the results. We hope you will add ipywidgets to your notebooks, and we're here to help you get started.

Core Interative Widgets

A demonstration notebook provides an overview of the core interactive widgets, including:

  • sliders
  • progress bars
  • text boxes
  • toggle buttons and checkboxes
  • display areas
  • and more

Jupyter Interactive Widgets as a Framework

Besides the widgets already provided with the library, the framework can be extended with custom widget libraries.

A template project is available in the form of a cookie cutter here.

This project is meant to help custom widget authors get started with the packaging and the distribution of Jupyter interactive widgets.

It produces a project for a Jupyter interactive widget library following the current best practices for using interactive widgets. An implementation for a placeholder "Hello World" widget is provided.

Popular widget libraries such as bqplot, pythreejs and ipyleaflet

follow exactly the same template and directory structure. They can serve as more advanced examples of usage of the Jupyter widget infrastructure.

For detailed information, please refer to the ipywidgets documentation.

More advanced examples

Examples of custom widget libraries built upon ipywidgets are

  • bqplot a 2d data visualization library enabling custom user interactions.
  • pythreejs a Jupyter - Three.js wrapper, bringing Three.js to the notebook.
  • ipyleaflet a leaflet widget for Jupyter.

Install

Install the current version of ipywidgets using pip or conda:

pip install ipywidgets

or

conda install ipywidgets

Then run

jupyter nbextension enable --py widgetsnbextension

See the Installation section of the documentation for additional details.

Compatibility

ipywidgets version Required notebook version
master master
5.x 4.2
4.1.x 4.1
4.0.x 4.0

Change log

Usage

See the examples section of the documentation. The widgets are being used in a variety of ways; some uses can be seen in these notebooks:

Contributing to ipywidgets

Project Jupyter resources

About

IPython widgets for the Jupyter Notebook

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 62.3%
  • Python 31.7%
  • CSS 4.4%
  • HTML 1.4%
  • Shell 0.2%