Skip to content

new mask drawing function using matplotlib - #225

Open
dsunday wants to merge 1 commit into
mainfrom
mask_drawing_fix
Open

dsunday wants to merge 1 commit into
mainfrom
mask_drawing_fix

Conversation

@dsunday

@dsunday dsunday commented Sep 11, 2026

Copy link
Copy Markdown
Collaborator

A new function that allows you to draw masks with a matplotlib widget, since the existing holoviews workflow appears to be broken/unreliable. The old version still exists, for testing the following code should work. Not that unlike the old version when you are done drawing this does not visually autocomplete the polygon. This only replaces the drawing function, the rest of the workflow can proceed as usual
##load the function
from PyHyperScattering.IntegrationUtils import DrawMaskMatplotlib

open the widget and draw the mask

%matplotlib widget

scan_single_image = scan.sel(energy=285, polarization=0, method="nearest")

mask = DrawMaskMatplotlib(scan_single_image)
mask.ui() # auto-scales color range from the image's own data; pass vmin=, vmax= to override

save the mask

mask.finish() # commits the region currently being edited, if any

file_path_save_mask = r"filepath"
file_name_save_mask = r"test.msk"
mask.save(os.path.join(file_path_save_mask, file_name_save_mask))

@dsunday
dsunday requested a review from KSRandazzo September 11, 2026 17:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant