Skip to content

ZaighumRajput/pyuvvis

 
 

Repository files navigation

alternate text

What's New

  • Just released 0.2

pyuvvis: Tools for explorative spectroscopy

Getting Started

The current documentation (and in-a-pinch test suite) is a series of example notebooks (iPython Notebook), which cover most of the basics. These have been linked below:

Legacy documentation is generously hosted by github.

License

3-Clause Revised BSD

Installation

Dependencies

In its current state, pyuvvis requires following dependencies:

pandas, scipy, chaco

I would recommend using Enthought Canopy and its excellent the package manager; however, pyuvvis is also registered on PyPi.

Pip Install

Make sure you have pip installed:

sudo apt-get install python-pip

Then:

pip install pyuvvis

To install all of the dependencies, download pyuvvis from github, navigate to the base directory and type:

pip install -r requirements.txt

Installation from source

In the pyuvvis base directory run:

python setup.py install

The developmental version can be cloned from github:

git clone https://github.com/hugadams/pyuvvis.git

This will not install any dependencies.

Download the source and run:

python setup.py install

This should install to your systems default Python path. If your default Python path is not found, or you have multiple Python distributions, install to an arbitrary directory using the home keyword option:

python setup.py install 

Testing Installation

Open a Python shell and run the following:

from pyuvvis import *

from pyuvvis.data import *

This should result in no errors.

History and Background

pyuvvis originally began at the George Washington University in an effort to develop exploratory visualization techniques with UVVis data, particularly the output of fiberoptic/nanotechnology research.

The decision to officialy package these nascent tools was made for the following reasons:

  1. To faciliate easier sharing and better organization between collaborators.
  2. To document the progress and functionalities of the toolset.
  3. To broadcast the toolkit to the community, and hopefully to merge with other Python spectroscopy packages.

In regard to the final point, pyuvvis is not an attempt to be the de-facto spectroscopy toolkit in Python; rather, it is a domain-specific wrapper for pandas. It should be quite extensible to other spectroscopy domains, where it may perform a supporting or ancillary role. It is our hope that in the future, other internal GWU tools for fiber optics design and nanomaterial plasmonics, combined with this package, may form the basis for a crude nano-optics Python package.

Interested in the Python ecosystem? Check out some of these related libraries:

  • NumPy (Fundamental vectorized numerics in Python)
  • SciPy (Collection of core, numpy-based scientific libraries)
  • matplotlib (De facto static plotting in Python)
  • pandas (R on steroids)
  • plotly (Interactive/cloud plotting)

Coming Soon

  • Correlation Analysis Tutorial
  • Stacked Spectra Tutorial

Have a feature request, or want to report a bug? Please fill out a github issue with the appropriate label.

About the Author

I'm a PhD student at GWU (check me out on researchgate, Linkedin or twitter(@hughesadam87)) and former Enthought intern. I work in biomolecule sensing and nanophotonics. Like any PhD student, my time is stretched across many projects. As such, the pyuvvis source code may is messy in places, and a test suite has yet to be developed. Developing the iPython notebook tutorials alongside the code helped served as a basic regression test platform.

Acknowledgements

Thank you countless developers who have patiently answered hundreds of my questions on too many mailing lists and sites to list.

Thank you Zhaowen Liu for all of your help with this project, our other projects and for your unwaivering encouragement (and for the panda).

About

Python pandas-based toolkit for explorative spectroscopy, in particular UVVis spectroscopic data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published