是否有可能不那么天真地链接IPython小部件?

时间:2015-07-27 11:57:14

标签: ipython ipython-notebook jupyter

我将从一个简单的例子开始,我将尝试做什么:

说,我有两个IntSlider小部件。我想有一个代表x和另一个x ^ 2(单向链接)。也许我甚至想要第一个滑块显示sqrt(x ^ 2),如果我要玩第二个滑块(双向链接)。

这将非常天真地翻译成这样的东西:

l1 = traitlets.link((widg1, 'value'),(widg2, 5* 'value'))

当然它没有,因为第二个元组参数应该是一个字符串,所以我实际上是在传递' valuevaluevaluevaluevalue'。

无论如何,这是可能的,如果是的话,它已经实施了吗?

1 个答案:

答案 0 :(得分:0)

link仅传递相同的值。如果要转换值,则需要回调:

def widg1_changed(name, new_value):
    widg2.value = 5 * new_value

widg1.on_trait_change(widg1_changed, 'value')

目前我不知道双向做这个好方法。