Interact widget

Interact is the basic widget that is often used to derive all other widgets. It has variable arguments, and, depending on these arguments, can affect many different variations of user input control.

Interact widget slider

We can use interact to produce a slider by passing in an extent. Take the following script:

from ipywidgets import interact
# define a function to work with (cubes the number)
def myfunction(arg):
    return arg+1
interact(myfunction, arg=9);

Here, we have a script that does the following:

  • References the package we want to use
  • Defines a function (which is called for every user input of a value)
  • Calls out to interact, passing our handler and a range of values

When we run this script, we get a scrollbar that is modifiable by the user:

Interact widget slider

The user is able to slide the vertical bar over the range of values. The upper end is 27 and the lower end is -9 (assume we could pass additional arguments to interact to set the range of values that are selectable). myfunction is called every time the value in the interact widget is changed and the result printed. As a result, we see 27 selected and the number 28 displayed below the slider (following the processing of  myfunction -27 +1).

Interact widget checkbox

We can change the type of control generated based on the arguments passed to interact. Take the following script:

from ipywidgets import interact
def myfunction(x):
    return x
interact(myfunction, x=False);

We are going through the same steps as before; however, the value passed is False (could also be True). The interact function examines the argument passed, determines that it is a Boolean value, and presents the appropriate control for a Boolean-a checkbox:

Interact widget checkbox

Interact widget text box

We can generate a text input control again by passing in different arguments to interact. For example, take the following script:

from ipywidgets import interact
def myfunction(x):
    return x
interact(myfunction, x= "Hello World ");

The script produces a text input control with the initial value of "Hello World":

Interact widget text box

Interact dropdown

We can also use the interact function to produce a drop-down list box for the user to select from. In the following script, we produce a dropdown with two choices:

from ipywidgets import interact
def myfunction(x):
    return x
interact(myfunction, x=('red','green'));

This script does the following:

  • Pulls in the interact reference
  • Defines a function that will be called whenever the user changes the value of the control
  • Calls interact with a set of values-interact will interpret this to mean create a dropdown for the user to select from.

If we run this script in a notebook, we get a display like the following:

Interact dropdown

The value printed at the bottom will change according to what is selected in the dropdown by the user.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.118.2.15