Version 0.9.0
Released 2024-01-13
New features
-
Processing steps
aspecd.processing.CommonRangeExtraction
works for ND datasets with arbitrary dimension N
-
Plotting
-
Legend title can be set from recipes
-
New attribute
aspecd.plotting.AxesProperties.invert
for inverting axes. Helpful, e.g., for plotting FTIR data without having to resort to explicitly provide descending axis limits. -
Setting font size of axes labels via
label_fontsize
property. -
Colorbar for 2D plotter
-
Annotations for plots
-
-
Device data
-
New property
aspecd.dataset.Dataset.device_data
for storing additional/secondary (monitoring) data. -
New class
aspecd.dataset.DeviceData
for device data. -
New class
aspecd.analysis.DeviceDataExtraction
for extracting device data from a dataset as a separate dataset. This allows to proceed with the extracted datasets as with any other dataset. -
New class
aspecd.plotting.MultiDeviceDataPlotter1D
for plotting multiple device data of a single dataset. -
New parameter
device_data
inaspecd.plotting.Plotter
for plotting device data rather than primary data of a dataset/datasets
-
-
Logging
- New function
aspecd.utils.get_logger
to get a logger object for a given module with the logger within the hierarchy of the ASpecD root logger. Important for packages derived from the ASpecD framework in order to get their log messages being captured, e.g. during recipe-driven data analysis.
- New function
Changes
-
Plotters can now handle device data instead of the primary data of a dataset (see above). This means, however, that instead of accessing
self.dataset.data
(orself.datasets[#].data
), plotters need to accessself.data.data
(orself.data[#].data
) instead.Authors of derived packages should update their plotters accordingly. See the hints for developers on device data in the plotting module.
-
Serving recipes logs messages from all ASpecD modules, not only from the
aspecd.tasks
module. -
aspecd.io.DatasetImporterFactory
logs warning if no concrete importer could be found for a given dataset, as this will usually result in (sometimes hard to detect) downstream problems. -
aspecd.io.DatasetExporter
adds a history record toaspecd.dataset.Dataset.tasks
. -
aspecd.plotting.SinglePlotter1D
andaspecd.plotting.MultiPlotter1D
issue warning with log plotters and negative values. -
aspecd.annotation.DatasetAnnotation
has been renamed fromAnnotation
to reflect the fact that there are now plot annotations as well.
Documentation
- New example: Plotting FTIR spectra normalised to spectral feature
- Section with general tips and tricks for styling plotters.
Fixes
aspecd.utils.ToDictMixin.to_dict
does not traverse settings for properties to exclude and include.- Workaround for
matplotlib.figure.Figure.savefig
not correctly handling figure DPI settings.