- Notifications
You must be signed in to change notification settings - Fork949
Interactive Widgets for the Jupyter Notebook
License
jupyter-widgets/ipywidgets
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Purpose | Badges |
---|---|
Latest (main : future 8.0) | |
Stable | |
Communication | |
ipywidgets, also known as jupyter-widgets or simply widgets, areinteractive HTML widgetsfor Jupyter notebooks and the IPython kernel.
Notebooks come alive when interactive widgets are used. Users gain control oftheir data and can visualize changes in the data.
Learning becomes an immersive, fun experience. Researchers can easily seehow changing inputs to a model impact the results. We hope you will addipywidgets to your notebooks, and we're here to help you get started.
The ipywidgets package is under theJupyter-Widgetssoftware subproject.
The fundamental widgets provided by this library are called core interactivewidgets. Ademonstration notebookprovides an overview of the core interactive widgets, including:
- sliders
- progress bars
- text boxes
- toggle buttons and checkboxes
- display areas
- and more
Besides the widgets already provided with the library, the framework can beextended with the development ofcustom widget libraries. For detailedinformation, please refer to theipywidgets documentation.
A template project for building custom widgets is available as acookiecutter.This cookiecutter project helps custom widget authors get started with thepackaging and the distribution of their custom Jupyter interactive widgets.The cookiecutter produces a project for a Jupyter interactive widget libraryfollowing the current best practices for using interactive widgets. Animplementation for a placeholder "Hello World" widget is provided as an example.
Popular widget libraries such asbqplot,pythreejs andipyleafletfollow exactly the same template and directory structure. They serve asmore advanced examples of usage of the Jupyter widget infrastructure.
Examples of custom widget libraries built upon ipywidgets are
- bqplot a 2d data visualization libraryenabling custom user interactions.
- pythreejs a Jupyter - Three.js wrapper,bringing Three.js to the notebook.
- ipyleaflet a leaflet widget for Jupyter.
The stable version of ipywidgets can be installed with pip or conda.
With pip:
pip install ipywidgets
With conda:
conda install -c conda-forge ipywidgets
Installing from source is more complicated and requires a developer install,see the detaileddeveloper install instructions.
If you want to install ipywidgets from source,you will need theyarn package manager version 3 or later.To install the latestmain
version from the root directory of the sourcecode, rundev-install.sh
. To only build the Python package enterpip install -e .
.
See theexamples section of the documentation. The widgets are being used in a variety of ways; some uses can be seen in these notebooks:Demo notebook of interactive widgets
Refer to change log for more detail.
ipywidgets | JupyterLab | Classic Notebook | nbclassic |
---|---|---|---|
main | - | TBD | |
7.6.3 | 0.2.6 | ||
Legacy | |||
6.x | - | ||
5.x | 4.2 | - | |
4.1.x | 4.1 | - | |
4.0.x | 4.0 | - |
We use a shared copyright model that enables all contributors to maintain thecopyright on their contributions.
See theLICENSE file in this repository for details.
Developer Meetings take place onzoom, on Tuesdays at 9:30AM Pacific Time (your time).
Minutes are taken atHackmd.io.
About
Interactive Widgets for the Jupyter Notebook