Python library for importing XDF (Extensible Data Format)
Project description
pyXDF
pyXDF is a Python importer for XDF files.
Sample usage
import pyxdf
import matplotlib.pyplot as plt
import numpy as np
data, header = pyxdf.load_xdf('test.xdf')
for stream in data:
y = stream['time_series']
if isinstance(y, list):
# list of strings, draw one vertical line for each marker
for timestamp, marker in zip(stream['time_stamps'], y):
plt.axvline(x=timestamp)
print(f'Marker "{marker[0]}" @ {timestamp:.2f}s')
elif isinstance(y, np.ndarray):
# numeric data, draw as lines
plt.plot(stream['time_stamps'], y)
else:
raise RuntimeError('Unknown stream format')
plt.show()
CLI examples
pyxdf
has an examples
module. These can be run from the command line for basic functionality.
print_metadata
will enable a DEBUG logger to log read messages, then it will print basic metadata about each found stream.python -m pyxdf.examples.print_metadata -f=/path/to/my.xdf
playback_lsl
will open an XDF file then replay its data in an infinite loop, but using current timestamps. This is useful for prototyping online processing.python -m pyxdf.examples.playback_lsl /path/to/my.xdf
Installation
The latest stable version can be installed with pip install pyxdf
.
For the latest development version, use pip install git+https://github.com/xdf-modules/pyxdf.git
.
For maintainers
A new release is automatically uploaded to PyPI. Therefore, as soon as a new release is created on GitHub (using a tag labeled e.g. v1.16.3
), a PyPI package is created with the version number matching the release tag.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyxdf-1.16.6.tar.gz
(21.7 kB
view hashes)
Built Distribution
pyxdf-1.16.6-py2.py3-none-any.whl
(18.8 kB
view hashes)
Close
Hashes for pyxdf-1.16.6-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9945b8debb1caf63345bbe01795b27b05a03788c266803e85e28d272a1d9d5f |
|
MD5 | 5a7dba862e22555e064b24aa7915b296 |
|
BLAKE2b-256 | e4d4012411cccacd354088a762e75e0e2a75c7473e001e7a672515a3427b7bfe |