Skip to main content

Traja is a trajectory analysis and visualization tool

Project description

traja

Trajectory Analysis in Python

.. image:: https://travis-ci.org/justinshenk/traja.svg?branch=master :target: https://travis-ci.org/justinshenk/traja

.. image:: https://badge.fury.io/py/traja.svg :target: https://badge.fury.io/py/traja

.. image:: https://readthedocs.org/projects/traja/badge/?version=latest :target: https://traja.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status

traja extends the capability of pandas DataFrame specific for animal trajectory analysis in 2D, and provides convenient interfaces to other geometric analysis packages (eg, shapely).

Introduction

The traja Python package is a toolkit for the numerical characterisation 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 animal. Trajr 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 handicapped 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 [add citation].

Installation and setup

To install traja onto your system, run

pip install traja

or download the zip file and run the graphical user interface [coming soon].

Import traja into your Python script or via the Python command-line with import traja.

Trajectories with traja

traja stores trajectories in pandas DataFrames, allowing any pandas functions to be used.

Load trajectory with x,y and time coordinates:

.. code-block:: python

import traja

df = traja.read_file('coords.csv')

Once a DataFrame is loaded, use the .traja accessor to access the visualization and analysis methods:

.. code-block:: python

df.traja.plot(title='Cage trajectory')

.. image:: https://raw.githubusercontent.com/justinshenk/traja/master/docs/source/_static/dvc_screenshot.png :alt: dvc_screenshot

Random walk

Generate random walks with

.. code-block:: python

df = traja.generate(n=1000, step_length=2)
df.traja.plot()

.. image:: https://raw.githubusercontent.com/justinshenk/traja/master/docs/source/_static/walk_screenshot.png :alt: walk_screenshot.png

Demo

Coming soon.

Acknowledgements

traja code implementation and analytical methods (particularly rediscretize_points) are heavily inspired by Jim McLean's R package trajr <https://github.com/JimMcL/trajr>__. Many thanks to Jim for his feedback.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

traja-0.0.9.tar.gz (21.9 kB view details)

Uploaded Source

File details

Details for the file traja-0.0.9.tar.gz.

File metadata

  • Download URL: traja-0.0.9.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.1

File hashes

Hashes for traja-0.0.9.tar.gz
Algorithm Hash digest
SHA256 117bf9bad06264004ede49215d8bb3c4c38e0812abfef8e08ffd316ee2ebc22c
MD5 4a3bcf94e4cf758a51f891d088390eff
BLAKE2b-256 821596e06ad66376273da025d2174f65b6cdd06ede5ddd2877176b3570abf462

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page