ethograph
Ethograph is a graphical user interface for visualizing and segmenting multimodal timeseries behavioural data. It builds upon a number of open-source libraries to load and quickly render video and pose files, audio and spectrograms, ephys recordings in various formats, and arbitrary multi-dimensional timeseries — all on one shared timeline.
Note this GUI is still in development. I welcome people testing it and providing feedback!
Quickstart
First install uv, a fast Python package manager:
# macOS / Linux (except WSL)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
winget install astral-sh.uv
Then install the GUI as a standalone tool — one command, no environment to create or activate:
uv tool install --python 3.12 "ethograph[gui,audio]"
To open the GUI, run:
ethograph check # Linux only : Check for missing libraries
ethograph launch
ethographnot recognized? uv has not added its bin directory to yourPATHyet. Runuv tool update-shell, then open a new terminal.
To upgrade later, run the same command with --force --refresh:
uv tool install --python 3.12 --force --refresh "ethograph[gui,audio]"
For installing into a dedicated virtual environment,segmentation models, and troubleshooting, see installation guide.
After launching, there are some example datasets you can explore the GUI with. To learn more about all the functionalities, I recommend the user manual.
Support
Ethograph is built on top of a number of open-source projects: PyAV, audioio, Neo, crowsetta, Neurodata Without Borders, xarray, pynapple, movement, phy, PyQtGraph, and pygfx (via pynaviz). The models that segment behaviour build on DLC2Action, FERAL and E2E-Spot.
Ethograph is GPL-3.0-or-later. The code it vendors or adapts from other projects, and each one's licence, is listed in THIRD_PARTY_NOTICES.md.
Release files for ethograph 0.2.42
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ethograph-0.2.42.tar.gz | 45.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ethograph-0.2.42-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 83.2 MB
Release files / ethograph-0.2.42.tar.gz
| Download URL | ethograph-0.2.42.tar.gz |
|---|---|
| Size | 45.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
360c45e1f6e91e71a4eb7b22b60defdea4a0faa161e4668ae14f9c7bfa5f0905
|
|
BLAKE2b-256 checksum How to use checksums |
0c78a9b38a80672f2d9e4f05e6cab36a1da4d7b538033506f2cf01961f868c24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Release files / ethograph-0.2.42-py3-none-any.whl
| Download URL | ethograph-0.2.42-py3-none-any.whl |
|---|---|
| Size | 37.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
98a3199a1fc7a10441f6fecff914e05d4e30b1452f85217a27b2e9fc586e6189
|
|
BLAKE2b-256 checksum How to use checksums |
1884c36423142244b53ef2508d16310e45c407f4a1e4d5fc29bd2f744ef9d2a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|