Skip to content

Experiment Loader, Fitting and other features - #6

Merged
DanPorter merged 10 commits into
mainfrom
exp_loader_oct25
Nov 6, 2025
Merged

Experiment Loader, Fitting and other features#6
DanPorter merged 10 commits into
mainfrom
exp_loader_oct25

Conversation

@DanPorter

Copy link
Copy Markdown
Collaborator

Large update with new features and significant refactoring.

  • Experiment and Scan classes
  • Fitting and multi-plots in tkgui
  • refactoring of code into sub-packages

See commits for more info.

plotting
 - added sub-package plotting
 - added matplotlib.py module
 - added scan_plot_manager.py class
 - added exp_plot_manager.py class

nexus_reader.py
 - added scan plot manager to NexusScan class
 - other functions added to NexusScan

experiment.py
 - added scan plot manager to Experiment class
 - other funtions added to Experiment

tests
 - tests added for plotting
 - all tests pass
Add features to Experiment and NexusScan, plus other improvements.

experiment.py
 - add Experiment.load_xas
 - add str, repr

nexus_reader.py
 - add HdfMap.generate_ids
 - add xas_scan
 - add instrument model

scan_plot_manager.py
 - add histogram
pypi-publish.yml
 - add PYPI CI

tkgui
 - add META_LABEL metadata
 - add metadata_list config editor
 - add rois to plot_widget.listbox
 - refactored nexus_treeview.py and added hdf_viewer.py and nexus_string_views.py
 - added default path to Nexus file viewer

 Experiment
  - add_data_paths function
  - improvement of multi-line plot

 NexusScan
  - moved NexusScan classes into seperate file

 mkdocs.yml
  - removed search to see if this brings search back
config.py
 - added C.current_dir etc
 - set this value in title_window.py
 - added config in several places

namespace_select.py
 - added create_scannable_selector
nexus_data_viewer.py
 - Added peak fit to dataviewer
 - added mult-plot analysis
 - improved grid layout
 - improved handling of small screen height

config.py
 - added text size
 - added screen_size.py

config_editor.py
 - added metadata list
 - moved text expression into text editor

All
 - changed definition of config
peak_fit_analysis.py
 - add widget for peak fitting

nexus_treeview.py
 - add right_click_menu into _Treeview
treeview.py
 - add single widget CanvasTreeview
 - replace function folder_treeview and other implementations

peak_fit_analysis.py
 - further improvements, added ScanFitModel
peak_fit_analysis.py
 - finished basic functionality of fitting

cli.py
 - added beamline argument

scan_selector.py
 - added threading daemon
 - handle threading error when starting before mainloop
tkguis/misc/functions.py
 - added config to topmenu

peak_fit_analysis.py
 - added more features
@DanPorter
DanPorter merged commit cfbfc94 into main Nov 6, 2025
5 checks passed
@DanPorter
DanPorter deleted the exp_loader_oct25 branch November 12, 2025 09:09
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