Use Slider for image index

This commit is contained in:
usov_i 2021-04-12 18:35:58 +02:00
parent 2a60c86b48
commit a034065a09

View File

@ -30,6 +30,8 @@ from bokeh.models import (
Rect,
ResetTool,
Select,
Slider,
Spacer,
Spinner,
TableColumn,
TextAreaInput,
@ -76,7 +78,7 @@ def create():
def update_image(index=None):
if index is None:
index = index_spinner.value
index = index_slider.value
current_image = det_data["data"][index]
proj_v_line_source.data.update(
@ -173,8 +175,8 @@ def create():
det_data = pyzebra.read_detector_data(new[0])
index_spinner.value = 0
index_spinner.high = det_data["data"].shape[0] - 1
index_slider.value = 0
index_slider.end = det_data["data"].shape[0] - 1
zebra_mode = det_data["zebra_mode"]
if zebra_mode == "nb":
@ -188,11 +190,11 @@ def create():
file_select = MultiSelect(title="Available .hdf files:", width=210, height=250)
file_select.on_change("value", file_select_callback)
def index_spinner_callback(_attr, _old, new):
def index_slider_callback(_attr, _old, new):
update_image(new)
index_spinner = Spinner(title="Image index:", value=0, low=0, width=80)
index_spinner.on_change("value", index_spinner_callback)
index_slider = Slider(title="Image index", value=0, start=0, end=1, width=300)
index_slider.on_change("value_throttled", index_slider_callback)
plot = Plot(
x_range=Range1d(0, IMAGE_W, bounds=(0, IMAGE_W)),
@ -543,7 +545,7 @@ def create():
proj_display_min_spinner.on_change("value", proj_display_min_spinner_callback)
def hkl_button_callback():
index = index_spinner.value
index = index_slider.value
h, k, l = calculate_hkl(det_data, index)
image_source.data.update(h=[h], k=[k], l=[l])
@ -601,7 +603,9 @@ def create():
)
layout_controls = row(
column(selection_button, selection_list), column(metadata_table, index_spinner, hkl_button),
column(selection_button, selection_list),
Spacer(width=20),
column(index_slider, metadata_table, hkl_button),
)
layout_overview = column(