traja 22.0.0

Trajectory Analysis in Python

Traja allows analyzing trajectory datasets using a wide range of tools, including pandas and R. Traja extends the capability of pandas DataFrame specific for animal or object trajectory analysis in 2D, and provides convenient interfaces to other geometric analysis packages (eg, shapely).


The Traja Python package is a toolkit for the numerical characterization and analysis of the trajectories of moving animals. Trajectory analysis is applicable in fields as diverse as optimal foraging theory, migration, and behavioural mimicry (e.g. for verifying similarities in locomotion). A trajectory is simply a record of the path followed by a moving object. Traja operates on trajectories in the form of a series of locations (as x, y coordinates) with times. Trajectories may be obtained by any method which provides this information, including manual tracking, radio telemetry, GPS tracking, and motion tracking from videos.

The goal of this package (and this document) is to aid biological researchers, who may not have extensive experience with Python, to analyse trajectories without being restricted by a limited knowledge of Python or programming. However, a basic understanding of Python is useful.

If you use Traja in your publications, please cite our paper in Journal of Open Source Software:

doi = {10.21105/joss.03202},
url = {},
year = {2021},
publisher = {The Open Journal},
volume = {6},
number = {63},
pages = {3202},
author = {Justin Shenk and Wolf Byttner and Saranraj Nambusubramaniyan and Alexander Zoeller},
title = {Traja: A Python toolbox for animal trajectory analysis},
journal = {Journal of Open Source Software}

Getting Started

Indices and tables