This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

axographio is a library that makes it easy to read and write binary data files in the AxoGraph file format.

AxoGraph X is a commercial software package used for data acquisition and analysis that is widely used in electrophysiological research (see http://axographx.com for more details). While it can read and write files in text format, its binary format is much smaller and faster to load and save; thus many users preferentially use this format. The company distributes the details of the file format along with sample C++ code for reading and writing to these files with AxoGraph X.

Python is a powerful and easy to use general purpose programming language (see http://python.org for more details). There are many useful python libraries available for scientific data analysis and data visualization such as scipy, matplotlib and MayaVI.

This library provides a simple interface for loading AxoGraph data files into a python program or interactive session. If you want to analyze data you recorded in AxoGraph using python based tools, this library provides the glue code you’ll need.

Installation

Preinstallation Requirements

  • A working Python installation
  • The setuptools package
  • The NumPy package
  • The Cython package

Note that NumPy takes a bit of work to build, so it may be easiest to install it from a repository (if you’re using Linux) or install a Python distribution containing it, such as the Enthought Python Distribution. On OS/X 10.5 (and probably other platforms), it looks like you can just use the following:

sudo easy_install numpy sudo easy_install Cython

Installation

Once all the preinstallation requirements have been met, you can download and install axographio using easy_install by typing the following command in a terminal window:

easy_install axographio

Usage

Loading a data file is as easy as calling read:

>>> import axographio
>>>
>>> f = axographio.read("AxoGraph X File.axgx")

At this point the variable f will contain a file_contents object with the column names and data from the file. For example, you could now plot the first two columns using matplotlib:

>>> import matplotlib.pyplot as plt
>>>
>>> plt.plot(f.data[0], f.data[1])
>>> plt.xlabel(f.names[0])
>>> plt.ylabel(f.names[1])
>>> plt.show()

Of course, you probably have grander plans than just plotting the data. The column data supports the standard sequence interfaces (i.e. indexing, iteration, etc.) and can be converted to a scipy or numpy array using the asarray functions in these packages, e.g.:

>>> import scipy as sp
>>>
>>> times = sp.asarray(f.data[0])

Writing files is also relatively easy. You simply create a new file_contents object (or use one you loaded earlier), and then call write. For example, the following code creates a file called “my60Hz.axgd” with two channels with 60 Hz sine waves

>>> import axographio
>>> import numpy as np
>>>
>>> times = np.arange(0,10,0.0001)
>>> column1 = np.sin(2*np.pi * 60 * times)
>>> column2 = np.cos(2*np.pi * 60 * times)
>>> f = axographio.file_contents(
...    ['time (s)', 'my recording (V)', 'your recording (V)'],
...    [times, column1, column2])
>>> f.write("my60Hz.axgd")

Questions and Support

Please post any questions, problems, comments, or suggestions on the axographio group on google groups (http://groups.google.com/group/axographio)

Acknowledgments

This initial version of this project was written in the Chiel Laboratory at Case Western Reserve University, with support from NIH grant NS047073, an Ohio Innovation Incentive Award Fellowship, and the Case Western Reserve MSTP (NIH T32 GM007250). This project builds on a number of other open source projects, including Python, C++ AxoGraph file input/output code from AxoGraph Scientific (placed in the public domain; a modified version is included with the project source code), Cython, and many others.

Release History

Release History

0.1.1b1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1.0

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
axographio-0.1.0-py2.6-linux-x86_64.egg (132.6 kB) Copy SHA256 Checksum SHA256 2.6 Egg Jul 20, 2009
axographio-0.1.0-py2.6-macosx-10.3-fat.egg (112.2 kB) Copy SHA256 Checksum SHA256 2.6 Egg Jul 20, 2009
axographio-0.1.0.tar.gz (77.1 kB) Copy SHA256 Checksum SHA256 Source Jul 20, 2009

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting