v3.0.0
v3.0.0 (2024-11-06)
Breaking Changes
-
Deprecated module
erlab.io.utilities
is removed. Useerlab.io.utils
instead. (e189722) -
Deprecated module
erlab.interactive.utilities
is removed. Useerlab.interactive.utils
instead. (af2c81c) -
Deprecated module
erlab.characterization
is removed. Useerlab.io.characterization
instead. (8d770bf) -
Deprecated module
erlab.analysis.utils
is removed. Useerlab.analysis.transform.shift
anderlab.analysis.gold.correct_with_edge
. (0b2ca44) -
Deprecated alias
slice_along_path
inerlab.analysis
is removed. Call fromerlab.analysis.interpolate
instead. (305832b) -
Deprecated aliases
correct_with_edge
andquick_resolution
inerlab.analysis
are removed. Call fromerlab.analysis.gold
instead. (075eaf8) -
Removed deprecated aliases
load_igor_ibw
andload_igor_pxp
. Usexarray.open_dataarray
andxarray.open_dataset
instead. (7f07ad2) -
The default attribute name for the sample temperature is changed to
sample_temp
fromtemp_sample
. This will unfortunately break a lot of code that relies on the keytemp_sample
, but will be easy to refactor with find and replace. (32e1cd5) -
All dataloaders must now add a new keyword argument to
load_single
, but implementing it is not mandatory.Also, dataloaders that implements summary generation by overriding
generate_summary
must now switch to the new method.See the summary generation section in the updated user guide.
Furthermore, the
isummarize
method is no longer public; code that uses this method should usesummarize
instead.The
usecache
argument to thesummarize
method is no longer available, and the cache will be updated whenever it is outdated. (0f5dab4)
Features
-
io.igor: enable loading experiment files to DataTree (1835be0)
Added methods to the backend to allow using
xarray.open_datatree
andxarray.open_groups
with Igor packed experiment files. Closes #29 -
add
qinfo
accessor (eb3a742)Adds a
qinfo
accessor that prints a table summarizing the data in a human readable format. Closes #27 -
interactive.kspace: pass lattice parameters and colormap info to
ktool
(6830af3)Added the ability to pass lattice vectors and colormaps to
ktool
. -
interactive.kspace: add circle ROI to ktool (304e1a5)
Added a button to the visualization tab which creates a circle ROI. The position and radius can be edited by right-clicking on the roi.
-
interactive.colors: add zero center button to right-click colorbar (c037de1)
-
interactive.imagetool: add
.ibw
and.pxt
files to load menu (73c3afe) -
io.dataloader: allow passing rcParams to interactive summary plot (a348366)
-
io.dataloader: implement automatic summary generation (0f5dab4)
It is now much easier to implement a summary generation mechanism. This commit also adds a new keyword argument to
load_single
that can greatly speed up summary generation. -
io.dataloader: support callable objects in
additional_attrs
(e209499)
Bug Fixes
- interactive.imagetool: fix copy cursor value for numpy 2 (dc19c82)
- io.dataloader: retain selected dimension in interactive summary (9d54f8b)
- accessors.general: keep associated coords in
qsel
when averaging (03a7b4a) - io.dataloader: ignore old summary files (bda95fc)
- io.plugins.kriss: fix KRISS ibw file match pattern (7ced571)
- analysis.gold: retain attributes in
quick_resolution
(504acdc) - do not require qt libs on initial import (118ead6)
Code Refactor
-
io.igor: change wave dimension name handling (3e0586a)
Waves with both dim and unit labels provided were given a dim label formatted like
dim(unit)
. This update changes this so that the dim label is justdim
, and the unit is inserted to coordinate attrs. -
io: remove deprecated module (e189722)
-
interactive: remove deprecated module (af2c81c)
-
remove deprecated module
erlab.characterization
(8d770bf) -
analysis: remove deprecated module (0b2ca44)
-
analysis: remove deprecated alias (305832b)
-
analysis: remove deprecated aliases (075eaf8)
-
interactive.imagetool.manager: add prefix to temporary directories for better identification (e56163b)
-
io.plugins: implement DA30 file identification patterns in superclass (f6dfc44)
-
io: remove deprecated aliases (7f07ad2)
-
change temperature attribute name (32e1cd5)
Changes
temp_sample
tosample_temp
for all data loaders and analysis code. -
utils.formatting: change formatting for numpy arrays (95d9f0b)
For arrays with 2 or more dimensions upon squeezing, only the minimum and maximum values are shown. Also, arrays with only two entries are displayed as a list.
-
io.dataloader: disable parallel loading by default (fed2428)
Parallel loading is now disabled by default since the overhead is larger than the performance gain in most cases.
-
change some warnings to emit from user level (e81f2b1)
-
io.dataloader: cache summary only if directory is writable (85bcb80)
-
io.plugins: improve warning message when a plugin fails to load (9ee0b90)
-
io: update datatree to use public api (6c27e07)
Also bumps the minimum supported xarray version to 2024.10.0.
-
io.dataloader: make
RegistryBase
private (df7079e) -
io.dataloader: rename loader registry attribute
default_data_dir
tocurrent_data_dir
(d87eba7)The attribute
default_data_dir
has been renamed tocurrent_data_dir
so that it is consistent withcurrent_loader
. Accessing the old name is now deprecated.Also, the
current_loader
andcurrent_data_dir
can now be assigned directly with a syntax likeerlab.io.loaders.current_loader = "merlin"
.
Performance
-
io.plugins.da30: faster summary generation for DA30 zip files (22b77bf)
-
io.igor: suppress
igor2
logging (5cd3a8c) -
analysis.interpolate: extend acceleration (84daa88)
The fast linear interpolator now allows more general interpolation points like interpolating 3D data on a 2D grid. This means that passing
method='linearfast'
toDataArray.interp
is faster in many cases.
[main 2c41bb1] bump: version 2.12.0 → 3.0.0
2 files changed, 5 insertions(+), 2 deletions(-)