Skip to main content

Trajectory data lossy compression format based on Google's Encoded Polyline Algorithm Format

Project description

Test Status PyPI downloads MIT License

trajectory

trajectory is a library for lossy compression of trajectory data based on Google’s Encoded Polyline Algorithm Format (http://goo.gl/PvXf8Y). It is heavily based on (in fact forked from) https://github.com/hicsail/polyline.

Installation

trajectory can be installed using pip or easy_install

$ pip install trajectory
or
$ easy_install trajectory

API Documentation

Encoding

To serialize a trajectory (set of (lat, lon, unix time in seconds) tuples)

import trajectory
trajectory.encode([
    (38.500, -120.200, 1582482601),
    (40.700, -120.950, 1582482611),
    (43.252, -126.453, 1582482627)
], 5)

This should return _p~iF~ps|U_ynpijgz~G_ulLnnqC_c`|@_mqNvxq`@__t`B.

You can set the required precision with the optional precision parameter. The default value is 5.

Decoding

To deserialize a trajectory (set of (lat, lon, unix time in seconds) tuples) represented by an encoded string

import trajectory
trajectory.decode('_p~iF~ps|U_ynpijgz~G_ulLnnqC_c`|@_mqNvxq`@__t`B', 5)

This should return the following:

[
    (38.500, -120.200, 1582482601),
    (40.700, -120.950, 1582482611),
    (43.252, -126.453, 1582482627)
]

You can set the required precision with the optional precision parameter. The default value is 5.

Development

Setup Dependencies

$ poetry install

Running Tests

$ poetry run pytest

Contributing

Issues and pull requests are welcome.

  • For proposing new features/improvements or reporting bugs, create an issue.

  • Check open issues for viewing existing ideas, verify if it is already proposed/being worked upon.

  • When implementing new features make sure to add relavant tests and documentation before sending pull requests.

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

trajectory-0.1.1.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

trajectory-0.1.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file trajectory-0.1.1.tar.gz.

File metadata

  • Download URL: trajectory-0.1.1.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0b5 CPython/3.8.1 Linux/5.5.4-arch1-1

File hashes

Hashes for trajectory-0.1.1.tar.gz
Algorithm Hash digest
SHA256 8631b3a943f10042d55a7d680a024436b3876049992d9447a4872e84b15b942c
MD5 2d3ee2a8d50099771840c7089e4b443a
BLAKE2b-256 fa706d5b12d36264d77e577c61699a307c8a02eba9573647d51c35b577e4b9b8

See more details on using hashes here.

File details

Details for the file trajectory-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: trajectory-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.0b5 CPython/3.8.1 Linux/5.5.4-arch1-1

File hashes

Hashes for trajectory-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d2a08f8f6ffaa8a70ea899d641f88386414a73de77883403395f42f17a2cad1e
MD5 0b8e80cc45d256cb6d1ef5bd230fa378
BLAKE2b-256 2bc69067bc3a3c4f891b37976ed28ef7c1979a1eb39500da3ddb44826a9f4ca1

See more details on using hashes here.

Supported by

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