Book Image

Jupyter Cookbook

By : Dan Toomey
Book Image

Jupyter Cookbook

By: Dan Toomey

Overview of this book

Jupyter has garnered a strong interest in the data science community of late, as it makes common data processing and analysis tasks much simpler. This book is for data science professionals who want to master various tasks related to Jupyter to create efficient, easy-to-share, scientific applications. The book starts with recipes on installing and running the Jupyter Notebook system on various platforms and configuring the various packages that can be used with it. You will then see how you can implement different programming languages and frameworks, such as Python, R, Julia, JavaScript, Scala, and Spark on your Jupyter Notebook. This book contains intuitive recipes on building interactive widgets to manipulate and visualize data in real time, sharing your code, creating a multi-user environment, and organizing your notebook. You will then get hands-on experience with Jupyter Labs, microservices, and deploying them on the web. By the end of this book, you will have taken your knowledge of Jupyter to the next level to perform all key tasks associated with it.
Table of Contents (17 chapters)
Title Page
Copyright and Credits
Packt Upsell
Contributors
Preface
Index

Linking widgets together


We saw individual widget use earlier. We will now link widgets in the following examples.

How to do it...

We can link together two widgets using code like this:

import ipywidgets as widgets

floatTextBox = widgets.FloatText()
floatSlider = widgets.FloatSlider()
display(floatTextBox,floatSlider)

widgetLink = widgets.jslink((floatTextBox, 'value'), (floatSlider, 'value'))

It produces a display of both widgets linked together. If you move the slider, then the textbox value will be updated and vice versa:

How it works...

We can link two widgets together using a call to widgets.jslink. Whenever one widget changes (in an attribute such as value), we can have another widget take that new value for itself and re-display it.

The key to this feature is the js in the method signature. Under the hood, we are using javascript event processing based on changes to the value of the objects. Of course, the actual display of the text value and moving the slider control is part of ipywidgets...