common-spectrum
v3.1.0
Published
Common package to deal with spectra
Downloads
166
Readme
common-spectrum
Common package to deal with spectral analysis.
An Analysis may be composed of many MeasurementXY of different flavours.
By default, the flavour is an empty string, and if your analysis only generates one spectrum, you may forget this level of complexity.
In the case of Thermogravitational Analysis (TGA), we may have two flavours for the data:
- Weight versus Temperature
- Weight versus Time
This package allows loading and saving an Analysis as a JCAMP-DX text file.
Installation
npm install common-spectrumUsage
import { Analysis, fromJcamp, toJcamp, getJSGraph } from '..';
let analysis = new Analysis();
expect(analysis.id).toHaveLength(8);
analysis.pushSpectrum(
{ x: [1, 2], y: [3, 4] },
{
xUnits: 'xUnits',
yUnits: 'yUnits',
xLabel: 'X axis',
yLabel: 'Y axis',
title: 'My spectrum',
dataType: 'TGA',
meta: {
meta1: 'Meta 1',
meta2: 'Meta 2',
},
},
);
let firstSpectrum = analysis.getSpectrum();
let normalized = analysis.getNormalizedData({
normalization: {
filters: [{ name: 'normalize' }],
},
});
let jsgraph = getJSGraph([analysis]);
let jcamp = toJcamp(analysis, {
info: {
owner: 'cheminfo',
origin: 'Common MeasurementXY',
},
});
let analysis2 = fromJcamp(jcamp);