Use Slider for image index
This commit is contained in:
parent
2a60c86b48
commit
a034065a09
@ -30,6 +30,8 @@ from bokeh.models import (
|
|||||||
Rect,
|
Rect,
|
||||||
ResetTool,
|
ResetTool,
|
||||||
Select,
|
Select,
|
||||||
|
Slider,
|
||||||
|
Spacer,
|
||||||
Spinner,
|
Spinner,
|
||||||
TableColumn,
|
TableColumn,
|
||||||
TextAreaInput,
|
TextAreaInput,
|
||||||
@ -76,7 +78,7 @@ def create():
|
|||||||
|
|
||||||
def update_image(index=None):
|
def update_image(index=None):
|
||||||
if index is None:
|
if index is None:
|
||||||
index = index_spinner.value
|
index = index_slider.value
|
||||||
|
|
||||||
current_image = det_data["data"][index]
|
current_image = det_data["data"][index]
|
||||||
proj_v_line_source.data.update(
|
proj_v_line_source.data.update(
|
||||||
@ -173,8 +175,8 @@ def create():
|
|||||||
|
|
||||||
det_data = pyzebra.read_detector_data(new[0])
|
det_data = pyzebra.read_detector_data(new[0])
|
||||||
|
|
||||||
index_spinner.value = 0
|
index_slider.value = 0
|
||||||
index_spinner.high = det_data["data"].shape[0] - 1
|
index_slider.end = det_data["data"].shape[0] - 1
|
||||||
|
|
||||||
zebra_mode = det_data["zebra_mode"]
|
zebra_mode = det_data["zebra_mode"]
|
||||||
if zebra_mode == "nb":
|
if zebra_mode == "nb":
|
||||||
@ -188,11 +190,11 @@ def create():
|
|||||||
file_select = MultiSelect(title="Available .hdf files:", width=210, height=250)
|
file_select = MultiSelect(title="Available .hdf files:", width=210, height=250)
|
||||||
file_select.on_change("value", file_select_callback)
|
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)
|
update_image(new)
|
||||||
|
|
||||||
index_spinner = Spinner(title="Image index:", value=0, low=0, width=80)
|
index_slider = Slider(title="Image index", value=0, start=0, end=1, width=300)
|
||||||
index_spinner.on_change("value", index_spinner_callback)
|
index_slider.on_change("value_throttled", index_slider_callback)
|
||||||
|
|
||||||
plot = Plot(
|
plot = Plot(
|
||||||
x_range=Range1d(0, IMAGE_W, bounds=(0, IMAGE_W)),
|
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)
|
proj_display_min_spinner.on_change("value", proj_display_min_spinner_callback)
|
||||||
|
|
||||||
def hkl_button_callback():
|
def hkl_button_callback():
|
||||||
index = index_spinner.value
|
index = index_slider.value
|
||||||
h, k, l = calculate_hkl(det_data, index)
|
h, k, l = calculate_hkl(det_data, index)
|
||||||
image_source.data.update(h=[h], k=[k], l=[l])
|
image_source.data.update(h=[h], k=[k], l=[l])
|
||||||
|
|
||||||
@ -601,7 +603,9 @@ def create():
|
|||||||
)
|
)
|
||||||
|
|
||||||
layout_controls = row(
|
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(
|
layout_overview = column(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user