def get_find_sliders(find_cfg, intensity_col):
sliders = {
"height_group": {
"type": "group",
"label": "Height Parameters",
"specs": {
"height": {
"type": "range",
"label": "Allowed Height (Y units)",
"min": 0,
"max": max(intensity_col),
},
"threshold": {
"type": "range",
"label": "Allowed Threshold (Y units)",
"min": 0,
"max": np.max(np.abs(np.diff(intensity_col))),
},
"prominence": {
"type": "range",
"label": "Allowed Prominence (Y units)",
"min": 0,
"max": max(intensity_col),
},
}
},
"width_group": {
"type": "group",
"label": "Width Parameters",
"specs": {
"distance": {
"type": "scalar",
"label": "Allowed Neighbor Distance (points)",
"min": 1,
"max": len(intensity_col),
"int": True,
"None": 1
},
"width": {
"type": "range",
"label": "Allowed Width (points)",
"min": 0,
"max": len(intensity_col),
"int": True
},
"wlen": {
"type": "scalar",
"label": "Window Length (points)",
"min": 2,
"max": len(intensity_col),
"int": True,
"None": len(intensity_col)
},
"rel_height": {
"type": "scalar",
"label": "Width @ Height (Height-Relative, top-down)",
"include_min": False,
"min": 0,
"max": 1,
"None": 1
},
"plateau_size": {
"type": "range",
"label": "Plateau Size (points)",
"min": 0,
"max": len(intensity_col),
"int": True
}
}
}
}
sliders = assemble_sliders(sliders, "find_peaks", find_cfg)
return sliders