v3.1.0
v3.1.0 (2024-11-28)
✨ Features
-
interactive.imagetool: overhaul manager UI (a2ce551)
Replaced widget-based implemenation with a model/view architecture. As a consequence, the displayed interface looks like a list. The user can now click a selected item to rename it, and drag items to reorder them. Each item now has a dedicated right-click menu.
-
interactive.imagetool.manager: improve file opening (da3425f)
Implements opening multiple files at once through the open menu of the manager. Also, add support for opening data files by dragging them into the manager window.
-
interactive.imagetool: add save and load functionality for workspace (a5d38af)
Enables users to save multiple ImageTool windows to a single file using the manager.
-
interactive.imagetool: show dialog when data is being loaded (5577249)
-
interactive.imagetool: change manager icon (3e20e63)
-
interactive.imagetool.manager: add menubar to manager (59326a1)
-
io.plugins: add summary generation to maestro loader (aa6f5d2)
-
plotting: add fine-grained control over color limit normalization (46c962f)
-
interactive.imagetool: open ktool from imagetool (d2cb8a7)
-
interactive.imagetool: add equal aspect ratio checkbox to right-click menu (d4db0cf)
-
interactive.imagetool: add crop menu (639749f)
-
interactive.utils: add qobject that handles mutually exclusive selection comboboxes (33b5f6b)
-
interactive.imagetool: add rename button to manager (56ac884)
-
interactive.imagetool: add open in new window option to right-click menu of each plot (8742659)
-
accessors.general: added
qshow.params
accessors for fit results (2592e5a)Calling
ds.qshow.params()
on a fit result dataset will now plot the coefficient value and errorbars as a function of fit coordinates. -
analysis.fit: add Fermi-Dirac distribution to MultiPeakFunction components (65a1e8c)
-
io.dataloader: add itool button to interactive summary (ba3aa15)
A button that can open the data directly in ImageTool has been added to the interactive summary. The button is displayed when the interactive summary is called while the ImageTool manager is running.
🐞 Bug Fixes
- io.plugins.lorea: fix file dialog method (4c74105)
- interactive.imagetool: resolve segfault on save current data (5699fa3)
- interactive.imagetool: retain axis order when opening dtool and goldtool (e14c9fc)
- io.plugins.merlin: fix match signature (5586cce)
- interactive.imagetool: cursor sync for non-uniform coords (4aa1425)
- io.plugins.maestro: fix wrong temperature attribute (6ed2a70)
- io.dataloader: allow dimensions without coordinates in output data (752facf)
- interactive: improve ktool compatibility with manager (4c775cf)
- interactive.imagetool: fix opening slice in new tool when manager is running (db8e0af)
- interactive.utils: fix opening with manager in tools (3726049)
- accessors.general: allow
qshow
for fit results from multivariable Datasets (f5b88e7) - interactive.imagetool: fix wrong decimals for rotation center (3fc3a50)
- accessors.general: fix component plotting for concatenated fit datasets with multiple models (7d2976d)
⚡️ Performance
-
interactive.imagetool: improve associated tool garbage collection (839dab0)
-
io: implement lazy loading for h5netcdf and nexusformat imports (3f219ae)
-
speed up initial import (d7f3b3c)
Accelerates initial import time by refactoring heavy imports to reside inside functions.
Importing the plotting module no longer automatically imports the colormap packages
cmocean
,cmasher
, andcolorcet
. The user must add manual import statements. -
analysis.interpolate: cache jitted interpolation functions (34521ef)
-
interactive.imagetool: optimize memory usage by reducing circular references (a675e1a)
🛠 Code Refactor
-
interactive.imagetool: make it easier to show and hide windows in manager (aefc560)
-
interactive.imagetool: use
QSharedMemory
instead ofmultiprocessing
(234c19f) -
plotting.general: use matplotlib api instead of xarray plot for 1D (9e38b2c)
-
io.dataloader: improve warning messages and error handling (1ebfa72)
-
interactive: move IconButton to interactive utils and add IconActionButton (e78190f)
-
interactive.imagetool: use HDF5 files instead of pickle to cache tools (be66297)
-
move
AxesConfiguration
fromerlab.analysis.kspace
toerlab.constants
(3593d41) -
plotting: streamline igor CT loading (e1e8baa)
-
io: update type hints for file handling functions to use Iterable (e3caf83)
-
io: streamline file identification logic and add user warnings for multiple file scenarios (05b7e6c)
-
io: replace several
os.path
calls with pathlib (bdfdd22) -
dataloader: make some methods private (31cf008)
This makes all dataloader methods and attributes that are not meant to be overriden private. Affected methods and properties are
combine_multiple
,generate_summary
, andname_map_reversed
. -
accessors.kspace: cleanup namespace (7af0d66)
Withdraws some internal properties and methods from public API.
-
directly import
_THIS_ARRAY
from xarray core (3bd72ec) -
interactive.imagetool: improve dialog code structure (5a16686)
-
interactive.imagetool: move dialogs into new dedicated module (a90a735)
-
interactive.imagetool: improve error messages for invalid data (a715ba1)
[main d94b1b7] bump: version 3.0.0 → 3.1.0
2 files changed, 2 insertions(+), 2 deletions(-)