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.41
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.41.tar.gz | 45.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ethograph-0.2.41-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 83.2 MB
Release files / ethograph-0.2.41.tar.gz
| Download URL | ethograph-0.2.41.tar.gz |
|---|---|
| Size | 45.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d4535a58e53297078a1e82770992bf1c024f439bb7ee0de9a04cd7b7c7636113
|
|
BLAKE2b-256 checksum How to use checksums |
1096376498c98dfd661343cfd1ac9fb90d626f2fb1a8982040b74d21fbebd4b0
|
| 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.41-py3-none-any.whl
| Download URL | ethograph-0.2.41-py3-none-any.whl |
|---|---|
| Size | 37.5 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
db4572bc793379f544573a1e4e05d17b4b72fe73129aa6c9224bbbf10a87d06e
|
|
BLAKE2b-256 checksum How to use checksums |
0079e9be5e69fb749ac41c88b14bb6c8d840a54afbc302213da8a8b0db5b22b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|