Ipywidgets интерактивн с переменными контейнерами виджетовPython

Программы на Python
Anonymous
Ipywidgets интерактивн с переменными контейнерами виджетов

Сообщение Anonymous »

Для интерактивного анализа данных с помощью Jupyter и ipywidgets я создаю несколько виджетов в зависимости от данных.
Т.е. в конечном итоге у меня есть несколько GridBoxes с флажками, RangeSlider и ColorPickers, которые я размещаю в виджете Tab.
Теперь я попробовал использовать

Код: Выделить всё

categories = ["A", "B", "C"] # retrieve from dataset
cbox = widgets.GridBox(children=[ widgets.Checkbox(value=True, description=v) for v in categories ])
rbox = widgets.GridBox(children=[ widgets.IntRangeSlider(value=[1,10], max=20, min=0, description=v) for v in categories ])

def analysis(variables, ranges):
print("Hello. Currently I do nothing with the input!")

display(widgets.Tab(children=[cbox, rbox], titles=('Variables', 'Ranges')))
display(widgets.interactive_output(analysis, {"variables":cbox, "ranges":rbox}))
Что не работает:

Код: Выделить всё

AttributeError: 'GridBox' has no attribute 'value'
Я тоже пробовал:

Код: Выделить всё

display(widgets.interactive_output(analysis, {"variables":cbox.children, "ranges":rbox.children}))
что тоже не работает.
Можно ли каким-то образом передать какой-либо тип контейнера в мою интерактивную функцию, или мне нужно прибегнуть к kwargs? И если да, то как бы вы это сделали эффективно?

Я использую ipywidget версии 8.1.5

Подробнее здесь: https://stackoverflow.com/questions/790 ... of-widgets

Вернуться в «Python»