Skip to content

Commit

Permalink
user guide updates
Browse files Browse the repository at this point in the history
  • Loading branch information
jlaehne committed Dec 22, 2023
1 parent 10966be commit c9af277
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 31 deletions.
14 changes: 8 additions & 6 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,23 @@ Welcome to LumiSpy's documentation!
.. _DOI: https://doi.org/10.5281/zenodo.4640445

**LumiSpy** is a Python package extending the functionality for multi-dimensional
data analysis provided by the `HyperSpy <https://hyperspy.org/>`_ library. It is
aimed at helping with the analysis of luminescence spectroscopy data
data analysis provided by the `HyperSpy <https://hyperspy.org/>`_ library. **LumiSpy**
is aimed at helping with the analysis of luminescence spectroscopy data
(cathodoluminescence, photoluminescence, electroluminescence, Raman, SNOM).
Reading and writing of data from many relevant file types is provided by the
library `RosettaSciIO <https://hyperspy.org/rosettasciio>`_.

Check out the :ref:`installation` section for further information, including
how to start using this project.
Check out the :ref:`installation` section for further information on how to
start using **LumiSpy**.

Complementing this documentation, the `LumiSpy Demos <https://github.com/LumiSpy/lumispy-demos>`_
repository contains curated Jupyter notebooks to provide tutorials and exemplary
workflows.

.. note::

This project is under active development. Everyone is welcome to contribute.
Please read our:ref:`contributing_label` guidelines and get started!
**LumiSpy** is under active development. Everyone is welcome to contribute.
Please read our :ref:`contributing_label` guidelines and get started!

Contents
========
Expand Down
41 changes: 22 additions & 19 deletions doc/user_guide/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,15 @@ Notable features that **HyperSpy** provides are:

- :external+hyperspy:ref:`base signal classes <signal-label>`
for the handling of (multidimensional) spectral data,
- the necessary tools for loading :external+hyperspy:ref:`various data file formats
<io>`,
- the necessary tools for :external+hyperspy:ref:`loading <io>`

Check warning on line 41 in doc/user_guide/introduction.rst

View workflow job for this annotation

GitHub Actions / Check links and make PR comments

external std:ref reference target not found: supported_formats
:external+rsciio:ref:`various data file formats <supported_formats>` using the
library `RosettaSciIO <https://hyperspy.org/rosettasciio>`_,
- :external+hyperspy:ref:`analytical tools <signal1D-label>`
that exploit the multidimensionality of datasets,
- a user-friendly and powerful framework for :external+hyperspy:ref:`model fitting
<model-label>` that
provides many standard functions and can be easily extended to custom ones,
<model-label>` that provides many :external+hyperspy:ref:`standard functions
<model_components-label>` and can be easily extended to
:external+hyperspy:ref:`custom ones <expression_component-label>`,
- :external+hyperspy:ref:`machine learning <ml-label>`
algorithms that can be useful, e.g. for denoising data,
- efficient handling of :external+hyperspy:ref:`big datasets <big-data-label>`,
Expand All @@ -55,7 +57,7 @@ Notable features that **HyperSpy** provides are:
:external+hyperspy:ref:`regions of interest <roi-label>` and a powerful
numpy-style :external+hyperspy:ref:`indexing mechanism <signal.indexing>`,
- handling of :external+hyperspy:ref:`non-uniform data axes <Axes_types>`
(introduced in the :external+hyperspy:ref:`v1.7 release
(introduced in the :external+hyperspy:ref:`1.7.0 release
<changes_1.7.0>`).

**LumiSpy** provides in particular:
Expand Down Expand Up @@ -124,16 +126,16 @@ The hierarchy of the LumiSpy signal types and their inheritance from HyperSpy
is summarized in the following diagram:

| └── :external:class:`hyperspy.signal.BaseSignal`
| ├── :external:class:`hyperspy._signals.signal1d.Signal1D`
| └── :class:`~.signals.luminescence_spectrum.LumiSpectrum`
| ├── :class:`~.signals.cl_spectrum.CLSpectrum`
| │ │ ├── :class:`~.signals.cl_spectrum.CLSEMSpectrum`
| │ │ └── :class:`~.signals.cl_spectrum.CLSTEMSpectrum`
| │ │ ├── :class:`~.signals.el_spectrum.ELSpectrum`
| └── :class:`~.signals.pl_spectrum.PLSpectrum`
| └── :class:`~.signals.luminescence_transient.LumiTransient`
| └── :class:`hyperspy.signal.Signal2D`
| └── :class:`~.signals.luminescence_transientspec.LumiTransientSpectrum`
| ├── :external:class:`hyperspy._signals.signal1d.Signal1D`
| └── :class:`~.signals.luminescence_spectrum.LumiSpectrum`
| ├── :class:`~.signals.cl_spectrum.CLSpectrum`
| ├── :class:`~.signals.cl_spectrum.CLSEMSpectrum`
| └── :class:`~.signals.cl_spectrum.CLSTEMSpectrum`
| ├── :class:`~.signals.el_spectrum.ELSpectsrum`
| └── :class:`~.signals.pl_spectrum.PLSpectrum`
| └── :class:`~.signals.luminescence_transient.LumiTransient`
| └── :class:`hyperspy.signal.Signal2D`
| └── :class:`~.signals.luminescence_transientspec.LumiTransientSpectrum`
|
|
Expand All @@ -142,16 +144,17 @@ Where are we heading?
=====================

LumiSpy is under active development, and as a user-driven project, we welcome
contributions (see :ref:`contributing_label`) to the code and documentation,
but also bug reports and feature requests from any users. Don't hesitate
:ref:`contributions <contributing_label>` to the code and documentation,
but also bug reports and feature requests from any user. Don't hesitate
to join the discussions!

Currrently, we have implemented the base functionality that extends
:external+hyperspy:ref:`HyperSpy's capabilities <user_guide>`
to additional signal classes. In the near future, the following functions
should be developed:

- handling of transient (time-resolved) data,
- reading of common PL data formats (see :external+rsciio:ref:`supported-formats` of RosettaSciIO),
- handling of transient (time-resolved) data with dedicated models,
- extend the capabilities for reading relevant data formats
(see :external+rsciio:ref:`supported-formats` of RosettaSciIO),
- more dedicated analysis functionalities,
- ...
6 changes: 3 additions & 3 deletions doc/user_guide/signal_axis.rst
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ Jacobian transformation
When transforming the signal axis, the signal intensity is automatically
rescaled (Jacobian transformation), unless the ``jacobian=False`` option is
given. Only converting the signal axis, and leaving the signal intensity
unchanged, implies that the integral of the signal over the same interval would
lead to different results depending on the quantity on the axis (see e.g.
unchanged, would implie that the integral of the signal over the same interval
leads to different results depending on the quantity on the axis (see e.g.
[Mooney]_ and [Wang]_).

For the energy axis as example, if we require :math:`I(E)dE = I(\lambda)d\lambda`,
Expand Down Expand Up @@ -126,7 +126,7 @@ if the ``metadata.Signal.Noise_properties.variance`` attribute is a constant,
it is converted into a :external:class:`hyperspy.api.signals.BaseSignal` object
before the transformation.

See :ref:`fitting_variance` for more general information on data variance
See the section on :ref:`fitting_variance` for more general information on data variance
in the context of model fitting and the HyperSpy documentation on `
:external+hyperspy:ref:`setting the noise properties <signal.noise_properties>`.

Expand Down
6 changes: 3 additions & 3 deletions doc/user_guide/signal_tools.rst
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ finding the position of the maximum intensity of a peak, useful in particular fo
non-symmetric peaks with pronounced shoulders.
It finds the centroid (center of mass) of a peak in the spectrum from the signal axis
units (or pixel number) and the intensity at each pixel value. It basically represents a
"weighted average" of the peak as such:
"weighted average" of the peak defined as:

.. math::
Expand Down Expand Up @@ -144,7 +144,7 @@ with the `kwargs` of :external:class:`scipy.interpolate.interp1d` function.

This function only works for a single peak. If you have multiple peaks,
slice the signal beforehand or use the slice parameter (which follows the
``s.isig[:]`` convention).
``s.isig[:]`` convention).s

.. Note::

Expand Down Expand Up @@ -197,7 +197,7 @@ The default operational mode is ``inplace=False`` (a new signal object is return

.. code-block:: python
>>> s.remove_negative(0.1)
>>> s2 = s.remove_negative(0.1)
.. _crop_edges:
Expand Down

0 comments on commit c9af277

Please sign in to comment.