Aspecd

Latest version: v0.12.0

Safety actively analyzes 710644 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 5

0.12.0

==============

Not yet released


**Note:** This version comes with a new version of the recipe format: 0.3. Existing recipes are updated automatically on import.


New features
------------

* Plotting

* Attribute ``clim`` in :class:`aspecd.plotting.SurfaceProperties`
* Parameter ``threshold`` for determining the levels of a contour plot in class :class:`aspecd.plotting.SinglePlotter2D`
* Attributes ``number_of_colors`` and ``first_color`` in :class:`aspecd.plotting.MultiPlot1DProperties`: Fixed number of elements from colormap, to have same colour succession in plots with different number of curves if a colormap is specified, and potential offset in colormap if starting with white/a light colour.
* Attributes ``norm`` and ``norm_parameters`` in :class:`aspecd.plotting.SurfaceProperties`.

* Plot annotations

* Parameter ``units`` in :class:`aspecd.annotation.Text`, :class:`aspecd.annotation.Marker`, :class:`aspecd.annotation.VerticalLine`, :class:`aspecd.annotation.HorizontalLine`, :class:`aspecd.annotation.VerticalSpan`, and :class:`aspecd.annotation.HorizontalSpan` allowing to position using axes rather than data coordinates.

* Processing

* :class:`aspecd.processing.SliceRearrangement` for rearranging slices of a dataset along one dimension.
* :class:`aspecd.processing.DatasetAlgebra` operates on a list of datasets, allowing to add/subtract multiple datasets from a given dataset.
* :class:`aspecd.processing.Denoising1DSVD` for denoising 1D datasets using singular value decomposition.

* Tasks

* Functions ``add`` and ``multiply`` for properties of tasks in recipes.
* New default setting ``number_of_colors`` on recipe level: Fixed number of elements from colormap, to have same colour succession in plots with different number of curves if a colormap is specified.
* Tasks can be marked as to be skipped, using the ``skip`` keyword on the top level of the task definition in a recipe.


Changes
-------

* Recipe structure changed slightly: The ``settings`` dictionary has a new sub-dictionary ``colors``, and the ``default_colormap`` key moved there, together with the new keys ``number_of_colors`` and ``first_color``.

* **New recipe format version: 0.3**.
* Existing recipes are updated automatically on import.

* Figure properties (see :class:`aspecd.plotting.FigureProperties`) are applied to the figure *before* the actual plotting is done, as some plotters need to know the (final) figure size or else.
* Axes properties (see :class:`aspecd.plotting.AxesProperties`) are applied to the axes *before* the actual plotting is done, as some plotters need to know the (final) axes limits or else.


Fixes
-----

* Plotter with colorbar work with recipes (no longer recursion in ``to_dict()``)
* :class:`aspecd.processing.SliceRemoval` handles lists properly
* :class:`aspecd.processing.SliceRemoval` removes value(s) from corresponding axis
* :class:`aspecd.processing.Averaging` handles inverted axes (*e.g.*, ppm scale) correctly regardless how ranges are given
* :class:`aspecd.plotting.MultiPlot1DProperties` handles explicit colours of individual drawings correctly.


Updated requirements
--------------------

* bibrecord >= 0.2

0.11.0

==============

Released 2024-10-17


New features
------------

* Plotting

* :class:`aspecd.plotting.PatchProperties` for properties of patches, as used for :class:`aspecd.annotation.VerticalSpan` and :class:`aspecd.annotation.HorizontalSpan`.
* :class:`aspecd.plotting.AnnotationProperties` and :class:`aspecd.plotting.AnnotationTextProperties` for properties of text annotations with lines, as used for :class:`aspecd.annotation.TextWithLine`.
* :class:`aspecd.plotting.AxesProperties` has new attributes ``frame_on``, ``xlabelposition``, and ``ylabelposition``.
* :class:`aspecd.plotting.Spines` and :class:`aspecd.plotting.SpineProperties` for controlling spine properties of axes.
* :class:`aspecd.plotting.MarkerProperties` for properties of markers, as used for :class:`aspecd.annotation.Marker`.

* Plot annotations

* :class:`aspecd.annotation.VerticalSpan` for adding vertical spans (rectangles) to plot(ter)s
* :class:`aspecd.annotation.HorizontalSpan` for adding horizontal spans (rectangles) to plot(ter)s
* :class:`aspecd.annotation.TextWithLine` for adding text with additional lines
* :class:`aspecd.annotation.Marker` for adding markers to plot(ter)s
* :class:`aspecd.annotation.FillBetween` for colouring the surface below a curve.

* Analysis

* :class:`aspecd.analysis.PeakFinding` can return both, peak positions and intensities, as pairs, ready to be used in :class:`aspecd.annotation.TextWithLine` annotations.
* :class:`aspecd.analysis.CentreOfMass` for calculating the centre of mass for ND datasets.

* IO

* :class:`aspecd.io.TxtImporter` has an additional parameter ``axis`` specifying which column to use for axis values when reading 2D data. (`6 <https://github.com/tillbiskup/aspecd/issues/6>`_)


Changes
-------

* Plotting: Default figure size in :class:`aspecd.plotting.FigureProperties` set to ``None`` to allow setting from matplotlibrc to take effect.

*Without adjustments, this may change the size (and aspect ratio) of your figures from 6x4 inches to 6.4x4.8 inches.*


Fixes
-----

* CompositePlotter operates on copies of plotters.
* Plot task writes correct filename for each plotter if results is used.
* PlotannotationTask saves properties to recipe history.
* PlotannotationTask can be applied to plotter and stored for later use as result at the same time.
* Text plot annotation with scalar y position set to zero works.

0.10.1

==============

Released 2024-08-13


Fixes
-----

* CompositePlotter shares axes correctly

0.10.0

==============

Released 2024-08-10


New features
------------

* Plotting

* Set individual properties for each of the lines of a :class:`aspecd.plotting.SinglePlotter2DStacked`
* Conveniently set identical properties for all lines of :class:`aspecd.plotting.SinglePlotter2DStacked` and :class:`aspecd.plotting.MultiPlotter1D`
* :class:`aspecd.plotting.TextProperties`
* :class:`aspecd.plotting.DrawingProperties` has attribute ``zorder``.
* :class:`aspecd.plotting.SubplotGridSpecs` for properties of the subplot grid of a CompositePlotter.
* :class:`aspecd.plotting.CompositePlotter` allows to share *x* and *y* axes.

* Plot annotations

* :class:`aspecd.annotations.Text` for text annotations to plot(ter)s

* Tasks

* :class:`aspecd.tasks.SingleplotTask` allows to set as many results as datasets, to allow for adding an individual plotter (for one of the datasets) to a :class:`aspecd.tasks.CompositeplotTask`. (`3 <https://github.com/tillbiskup/aspecd/issues/3>`_)

* Models

* :class:`aspecd.model.Voigtian` for creating Voigt profiles frequently used in spectroscopy to describe line shapes.


Fixes
-----

* Tasks

* :class:`aspecd.tasks.MultiplotTask` preserves order of datasets the task is applied to, regardless whether the datasets are originally imported or result from prior tasks (via ``result`` property). (`2 <https://github.com/tillbiskup/aspecd/issues/2>`_)
* :meth:`aspecd.tasks.Recipe.get_datasets` preserves order of datasets, regardless whether the datasets are originally imported or result from prior tasks (via ``result`` property).
* :meth:`aspecd.tasks.Chef.cook` closes open figures.

* Plotting

* :class:`CompositePlotter` does not add additional drawings any more to the plotters used. (`5 <https://github.com/tillbiskup/aspecd/issues/5>`_)

0.9.3

=============

Released 2024-07-22


Fixes
-----

* Correct method for area normalization: take number of points into account.
* Adjust stacking in ``SinglePlotter2DStacked`` for data with larger minima than maxima.
* Templates for LaTeX dataset report: escape ``_`` and ` in dataset label.
* Axis labels can be removed by setting one or both of ``xlabel`` and ``ylabel`` to ``None`` (or ``null`` in YAML/recipe).

0.9.2

=============

Released 2024-03-24


Fixes
-----

* Revert changes in :class:`aspecd.utils.ToDictMixin` from version 0.9.1, as it caused problems with Matplotlib.
* Updates on contour plots to work with Matplotlib 3.8
* Updates to prevent deprecation warning for NumPy 1.25
* :class:`aspecd.processing.RangeExtraction` extracts correct range for axis values.

Page 1 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.