GithubHelp home page GithubHelp logo

bovee / aston Goto Github PK

View Code? Open in Web Editor NEW
21.0 6.0 6.0 5.05 MB

View and interpret UV-visible and mass spectrometry chromatographic data.

License: BSD 3-Clause "New" or "Revised" License

Python 96.76% R 0.99% MAXScript 2.25%

aston's Introduction

Travis CI

⚠️ MAINTENANCE-ONLY ⚠️

I still check the notifications for Aston and I'm happy to answer questions, but I have no intention of writing any more code here. If you need to work with chromatographic or other scientific file formats, please check out entab (pip install entab) for a package that's still in active development, much faster, and supports most of the same formats that Aston does.

Aston

Aston is a cross-platform, open source library for the analysis of chromatographic data. It's named for Francis William Aston, creator of the first fully functional mass spectrometer, and written using Python, Numpy, and Scipy. A graphical front-end is also available at https://github.com/bovee/AstonQt.

Installation

Before you can use Aston, you must install Numpy and Scipy. Because these two packages contain C and Fortran code, installing via pip may be difficult (if you take this route, install them separately -- pip install numpy then pip install scipy) so I recommend installing them with your operating systems native facilities:

  • Arch: sudo pacman -Syu python-numpy python-scipy
  • Ubuntu/Debian: sudo apt-get install python3-numpy python3-scipy
  • Mac OS X: brew install numpy and brew install scipy ( you will need Homebrew for this: http://brew.sh/ )
  • Windows: graphical Anaconda installer @ https://www.continuum.io/downloads

Once these are installed, you can check that everything works by running the tests with python setup.py test.

Usage

from aston.tracefile import TraceFile
c = TraceFile('./test.cdf')

aston's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

aston's Issues

Change License to BSD

This would be helpful for others to integrate Aston library code into their commercial products.

Backport bug fixes/new file support from "web backend" branch

I'm not getting a lot done on my private web-based Aston clone (it turns out rendering full 2D plots over the web with current bandwidth is a "little" slow with current technologies), so I should backport some of the stuff from that into Aston (a couple bug fixes, FCS file support... other stuff?)

Cut New Releases

Ever since Google Code went down (and I started working on other shinier things) there hasn't been a new release of Aston. Considering the number of changes in the codebase, there probably should be.

This requires:

  • Getting a PC to build the Windows version on
  • Getting the UI working again (with PyQt5 update, etc)
  • Building Mac & PC packages

Preferably using the GitHub release thing-y: https://help.github.com/articles/about-releases/

Agilent .uv file structure

Not really an issue... Where did you find the structure of the ".uv" Agilent files? I have one that doesn't seem to be working with Aston, and I'd like to compare with the documented structure. Thanks

Support for *DX files

It would be nice to add support for OpenLab CDS2 raw data files (*.DX) that are used in new Agilent HPLCs. Although it is possible to export chromatographic data in an old format (ChemStation, *.uv, *.ch files) the conversion of the exported uv file produced nonsense data (it may be related to #10). I was able to open this uv file in OpenChrom, so the file is not corrupted or anything. Unfortunatelly it cannot be exported from OpenChrom.

Edit: If I will have time, I will try to write a parser for dx file. I noticed that there is a XML structure at the end so maybe it can be heplfull.

Get working as a standalone library and submit to PyPI

There currently at least one PyQt4/5 dependency in the code when you try to import the classes manually, so we need to:

  • make sure there are no unnecessary dependencies like that (PyQt4, matplotlib) unless you need them
  • clean up the API
  • improve the doc-strings
  • maybe put together a IPython notebook or two with examples
  • make a package submission to PyPI

Improve documentation

At the minimum, we need:

  • a "getting started" guide with pictures
  • an advanced options guide on how to use different integrators, change peak models, etc
  • with some references to where the different integrators come from, how their performance is, etc
  • API documentation (for using as a Python library)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.