gpt4 book ai didi

jupyter-notebook - 每次更新 ipywidgets 时更新显示值

转载 作者:行者123 更新时间:2023-12-04 12:36:31 24 4
gpt4 key购买 nike

在我的笔记本中,我有 7 个 FloatSlider 小部件。我希望这 7 个小部件的产品始终以一种方式显示,当用户移动滑块时,显示的值会更新。目前我正在尝试在 Widgets.Text (n) 中显示 SliderWidgets 的产品,但我不确定它是否是最佳解决方案。

 import ipywidgets as widgets

caption = widgets.Label(value='Play around with the variables to see how N changes!')

r = widgets.FloatSlider(value=1,
min=1.0,
max=3.0,
step=0.1,
description="R*")

fp = widgets.FloatSlider(value=1,
min=0.35,
max=1.0,
step=0.05,
description="fp")

ne = widgets.FloatSlider(value=1
min=0.2,
max=3.0,
step=0.1,
description="ne")

fl = widgets.FloatSlider(value=1,
min=1.0,
max=1.3,
step=0.05,
description="fl")

fi = widgets.FloatSlider(value=1,
min=0.5,
max=1.5,
step=0.05,
description="fi")

fc = widgets.FloatSlider(value=0.20,
min=0.10,
max=0.30,
step=0.05,
description="fi",)

l = widgets.FloatSlider(value=60000000.0,
min=5000000.0,
max=1000000000.0,
step=5000000,
description="fi")


n = widgets.Text(
value= str(int(r.value * fp.value * ne.value * fl.value * fi.value * fc.value * l.value)) + " civilizations" ,
description='Estimated N:',
disabled=True)

left_box = VBox([r, fp, ne,fl])
right_box = VBox([ fi,fc,l,n])
HBox([left_box, right_box])

我使用的这段代码显示了小部件,但不会自动更新小部件 n。对我来说最好的方法是什么,不需要每次都打印一个新值?

最佳答案

您可以使用 observe 以及每个滑块的值更改的回调函数

def on_value_change(change):
n.value = str(int(r.value * fp.value * ne.value * fl.value * fi.value * fc.value * l.value)) + " civilizations"

r.observe(on_value_change)
fp.observe(on_value_change)
# ...

关于jupyter-notebook - 每次更新 ipywidgets 时更新显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61176844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com