-
Notifications
You must be signed in to change notification settings - Fork 6
/
README
138 lines (95 loc) · 3.43 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
====
Igor
====
:Authors: W. Trevor King <wking@tremily.us>;
Paul Kienzle <paul.kienzle@nist.gov>
:License: GNU General Public License, version 3+
Python parsers for Igor Binary Waves (.ibw) and Packed Experiment
(.pxp) files written by WaveMetrics' IGOR Pro software.
Installation
============
Packages
--------
If `igor` already exists in your package manager's repository, you
should install `igor` in the usual way.
Gentoo
~~~~~~
I've packaged `igor` for Gentoo. You need layman_ and my `wtk
overlay`_. Install with::
# emerge -av app-portage/layman
# layman --add wtk
# emerge -av sci-misc/igor
Dependencies
------------
If you're installing by hand or packaging `igor` for another
distribution, you'll need the following dependencies:
=========== ================= ============================
Package Debian_ Gentoo_
=========== ================= ============================
Numpy_ python-numpy dev-python/numpy
Matplotlib_ python-matplotlib dev-python/matplotlib
Nose_ python-nose dev-python/nose
=========== ================= ============================
Installing by hand
------------------
`igor` is available as a Git_ repository::
$ git clone git://tremily.us/igor.git
See the homepage_ for details. To install the checkout, run the
standard::
$ python setup.py install
You can also automate this installation with pip_::
$ pip install igor
Usage
=====
See the docstrings and unit tests for examples using the Python API.
The package also installs to scripts, ``igorbinarywave.py`` and
``igorpackedexperiment.py`` which can be used to dump files to stdout.
For details on their usage, use the ``--help`` option. For example::
$ igorbinarywave.py --help
For users transitioning from igor.py_, there's a compatibility module
exposing the old interface. Just change::
import igor
to::
import igor.igorpy as igor
in your calling code.
Testing
=======
Run internal unit tests with::
$ nosetests --with-doctest --doctest-tests igor test
The data in the ``test/data`` directory is in the Git repository, but
it is not bundled with the source code. If you want the test data,
you'll have to clone the Git repository or download a snapshot.
Licence
=======
This project is distributed under the `GNU Lesser General Public
License Version 3`_ or greater, see the ``COPYING`` file distributed
with the project for details.
Maintenance
===========
Maintainer
----------
W. Trevor King
wking@tremily.us
Copyright 2008-2012
Release procedure
-----------------
When a new version of the package is ready, increment __version__
in ``igor/__init__.py`` and run update-copyright_::
$ update-copyright.py
to update the copyright blurbs. Then run::
$ python setup.py sdist upload
This will place a new version on PyPI.
.. _layman: http://layman.sourceforge.net/
.. _wtk overlay: http://blog.tremily.us/posts/Gentoo_overlay/
.. _Debian: http://www.debian.org/
.. _Gentoo: http://www.gentoo.org/
.. _NumPy: http://numpy.scipy.org/
.. _Matplotlib: http://matplotlib.sourceforge.net/
.. _Nose: http://somethingaboutorange.com/mrl/projects/nose/
.. _Git: http://git-scm.com/
.. _homepage: http://blog.tremily.us/posts/igor/
.. _pip: http://pypi.python.org/pypi/pip
.. _igor.py: http://pypi.python.org/pypi/igor.py
.. _GNU Lesser General Public License Version 3:
http://www.gnu.org/licenses/lgpl.txt
.. _update-copyright: http://blog.tremily.us/posts/update-copyright/