ComPlat / jcampconverter

Convert JCAMP data to javascript objects

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

JCAMP converter

NPM version build status Test coverage David deps npm download

Parse and convert JCAMP data

Installation

Node JS

npm install jcampconverter

Bower

bower install jcampconverter

Methods

convert(jcamp, [options], [useWorker])

Converts the jcamp using options.
Returns an object with information about the converted file and uncompressed spectra data.

Arguments

  • jcamp - String containing the JCAMP data
  • options - Object with options to pass to the converter
  • useWorker - Browser only: convert in a web worker (default: false). If this option is set to true, it will return a Promise.

Options

  • keepRecordsRegExp - regexp to select which records should be placed in the info field. By default: :/^$/} (nothing is kept)
  • xy - instead of creating a 1D array containing [x1,y1,x2,y2, ...] create an object: {x:[], y:[]}
  • withoutXY - do not parse XYDATA or PEAKTABLE fields. Useful to only extract metadata fields (combine this option with keepRecordsRegExp)
  • chromatogram - use the new GC/MS data format output (default: false)

2D NMR options:

  • noContour - if true, the contour levels will not be generated. Instead the raw data will be available in result.minMax.z (default: false)
  • nbContourLevels - number of contour levels to use in each positive and negative sides (default: 7)
  • noiseMultiplier - default: 5
  • keepSpectra - Generate array for 2D NMR spectra (default: false)

Use as a module

Node.JS

var converter = require('jcampconverter');
var jcamp = require('fs').readFileSync('path/to/jcamp.dx').toString();

var result = converter.convert(jcamp);

AMD

require(['jcampconverter'], function(JcampConverter) {
    // Use the worker
    JcampConverter.convert(jcamp, true).then(function (result) {
        // Do something with result
    });
});

Testing and build

npm install
npm test
npm run build

Benchmark

npm run benchmark

License

MIT

About

Convert JCAMP data to javascript objects

License:MIT License


Languages

Language:JavaScript 97.3%Language:HTML 2.7%