#header-mark#
Param 参数组件
PnParam
组件允许自定义 param.Parameterized
类参数的小部件、布局和样式。通过该组件,可以轻松地为参数化模型创建交互式界面。
底层实现为panel.pane.Param
,参数基本一致,参考文档:https://panel.holoviz.org/reference/panes/Param.html
基本用法
PnParam
组件可以用来查看和编辑参数化模型。下面我们构建一个骑行运动员及其功率曲线的模型作为示例:
自定义小部件
我们可以为特定参数自定义小部件类型:
展开子对象
我们可以通过 expand
参数默认展开子对象:
选择特定参数和自定义布局
我们可以选择只显示特定参数,并自定义布局:
滑块控件的连续更新禁用
当函数运行时间较长并且依赖于某个参数时,实时反馈可能成为负担,而不是有帮助。因此,如果参数使用的是滑块控件,可以通过设置 throttled
关键字为 True
来仅在释放鼠标按钮后才执行函数。
组合参数控件与结果显示
可以组合参数控件与计算结果显示:
API
属性
属性名 | 说明 | 类型 | 默认值 |
---|---|---|---|
object | param.Parameterized 类的 param 属性 | param.parameterized.Parameters | None |
parameters | 标识要包含在窗格中的参数子集的列表 | List[str ] | [] |
widgets | 指定特定参数使用哪些小部件的字典。还可以指定小部件属性 | Dict | {} |
default_layout | 布局,如 Column、Row 等,或自定义 GridBox | ClassSelector | Column |
display_threshold | 优先级低于此值的参数不会显示 | float | 0 |
expand | 参数化子对象在实例化时是否展开或折叠 | bool | False |
expand_button | 是否添加展开和折叠子对象的按钮 | bool | True |
expand_layout | 展开子对象的布局 | layout | Column |
name | 窗格的标题 | str | '' |
show_labels | 是否显示标签 | bool | True |
show_name | 是否显示参数化类的名称 | bool | True |
sizing_mode | 尺寸调整模式 | str | 'fixed' |
width | 宽度 | int, str | None |
height | 高度 | int, str | None |
min_width | 最小宽度 | int | None |
min_height | 最小高度 | int | None |
max_width | 最大宽度 | int | None |
max_height | 最大高度 | int | None |
margin | 外边距 | int, tuple | 5 |
css_classes | CSS类名列表 | list | [] |
Slots
插槽名 | 说明 |
---|---|
Param的字段 | 自定义widget |
Controls
src/examples/panel_vuepy/panes/Param