Skip to content

smartaquametering/common-spectrum

 
 

Repository files navigation

common-spectrum

NPM version build status Test coverage npm download

Common package to deal with spectral analysis.

An Analysis may be composed of many Spectrum of different flavors.

By default the flavor is an empty string and if your analysis only generates one spectrum you may forget this level of complexity.

In the case of Thermogravitaional Analysis (TGA) we may have 2 flavor for the data:

  • Weight versus Temperature
  • Weight versus Time

This package allow to load / save an Analysis as a JCAMP-DX text file.

Installation

$ npm i common-spectrum

Usage

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 Spectrum',
  },
});

let analysis2 = fromJcamp(jcamp);

License

MIT

Packages

 
 
 

Contributors

Languages

  • JavaScript 97.1%
  • TypeScript 2.6%
  • HTML 0.3%