【发布时间】:2016-10-03 23:18:45
【问题描述】:
我正在尝试在 jupyter notebook 上使用 ipywidgets 制作交互式滑块,以在用户更改滑块小部件时更改绘图数据,这很简单,我们可以轻松找到示例代码。我遇到的问题是双重的:1)当我的函数中有很多参数(=变量,滑块)要显示时,滑块是垂直排列的,因此在不滚动 jupyter 页面的情况下很难控制它们。有什么方法可以按照我的意愿排列滑块,就像 m by n 网格一样? 2)为了传递大量整数/浮点值滑块,我制作了一个字典以传递给交互函数。在这里,关键(=滑块/变量/参数)名称似乎以随机顺序显示。我尝试在事先按键名排序后传递字典,但仍然无法解决问题。
如果您能分享任何想法,我将不胜感激。
def myfun(**var_dict):
v = [value for value in var_dict.values()]
return np.sum(v)
var_dict = {'var1':1,'var2':2,'var3':3,'var4':4}
w = interactive(myfun,**var_dict)
display(w)
【问题讨论】:
-
考虑使用ordered dict?
-
我尝试了 OrderedDict,但没有成功,可能是因为 Python 的函数调用语义使用常规无序字典传入关键字参数。
标签: python jupyter-notebook ipywidgets