{"id":28553963,"url":"https://github.com/movingpandas/qgis-trajectools","last_synced_at":"2026-01-31T11:01:57.722Z","repository":{"id":55446503,"uuid":"160056355","full_name":"movingpandas/qgis-trajectools","owner":"movingpandas","description":"Trajectools - trajectory data analysis tools for the QGIS Processing toolbox","archived":false,"fork":false,"pushed_at":"2026-01-22T18:30:56.000Z","size":2274,"stargazers_count":66,"open_issues_count":8,"forks_count":17,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-01-23T11:33:58.685Z","etag":null,"topics":["gis","mobility-data","movement-analysis","movement-data","qgis-plugin","qgis-processing","qgis3-plugin"],"latest_commit_sha":null,"homepage":"https://codeberg.org/movingpandas/trajectools","language":"QML","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/movingpandas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-12-02T14:35:51.000Z","updated_at":"2026-01-22T18:31:01.000Z","dependencies_parsed_at":"2024-01-23T10:14:12.650Z","dependency_job_id":"23761f8a-48d1-4e0a-8e86-8f3d78e22223","html_url":"https://github.com/movingpandas/qgis-trajectools","commit_stats":null,"previous_names":["movingpandas/qgis-processing-trajectory","anitagraser/qgis-processing-trajectory"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/movingpandas/qgis-trajectools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/movingpandas%2Fqgis-trajectools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/movingpandas%2Fqgis-trajectools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/movingpandas%2Fqgis-trajectools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/movingpandas%2Fqgis-trajectools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/movingpandas","download_url":"https://codeload.github.com/movingpandas/qgis-trajectools/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/movingpandas%2Fqgis-trajectools/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28939490,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T10:18:23.202Z","status":"ssl_error","status_checked_at":"2026-01-31T10:18:22.693Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gis","mobility-data","movement-analysis","movement-data","qgis-plugin","qgis-processing","qgis3-plugin"],"created_at":"2025-06-10T05:05:29.196Z","updated_at":"2026-01-31T11:01:57.712Z","avatar_url":"https://github.com/movingpandas.png","language":"QML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# QGIS Trajectools\n\n\u003ca href=\"https://codeberg.org/movingpandas/trajectools\"\u003e\n    \u003cimg alt=\"Get it on Codeberg\" src=\"https://get-it-on.codeberg.org/get-it-on-blue-on-white.png\" height=\"60\" align=\"right\"\u003e\n\u003c/a\u003e\n\n[![QGIS Plugin Repo](https://img.shields.io/badge/QGIS-Plugin%20repo-green.svg)](https://plugins.qgis.org/plugins/processing_trajectory/)\n[![Issue Tracker](https://img.shields.io/badge/Issue_tracker-Codeberg-blue.svg)](https://codeberg.org/movingpandas/trajectools/issues) \n[![Zenodo badge](https://zenodo.org/badge/DOI/10.5281/zenodo.13847642.svg)](https://doi.org/10.5281/zenodo.13847642)\n\nThe Trajectools plugin adds mobility data analysis algorithms to the QGIS Processing toolbox. \n\n![trajectools](https://github.com/movingpandas/qgis-processing-trajectory/assets/590385/218acb03-41be-4ea0-aee4-b773911d58f9)\n\n\n\n## Requirements\n\nTrajectools requires [MovingPandas](https://github.com/movingpandas/movingpandas) \u003e= 0.22.3 and optionally integrates [scikit-mobility](https://scikit-mobility.github.io/scikit-mobility/) (for privacy tests), [stonesoup](https://stonesoup.readthedocs.io/) (for smoothing), and [gtfs_functions](https://github.com/Bondify/gtfs_functions) (for GTFS data support). \n\n### Conda install\n\nThe recommended way to install these dependencies is through conda/mamba:\n\n```\n(base) conda create -n qgis -c conda-forge python=3.12 \n(base) conda activate qgis\n(qgis) mamba install -c conda-forge qgis movingpandas scikit-mobility stonesoup\n(qgis) pip install gtfs_functions==2.5 h3==3.7.7\n```\n\nNote: Do not upgrade to Python 3.13 if you want to use the GTFS functions. (See https://codeberg.org/movingpandas/trajectools/issues/103 for details.)\n\n### Pip install\n\nIf you cannot use conda, you may try installing from the QGIS Python Console:\n\n```\nimport pip\npip.main(['install', 'movingpandas'])\npip.main(['install', 'scikit-mobility'])\npip.main(['install', 'stonesoup'])\npip.main(['install', 'gtfs_functions'])\n```\n\n## Plugin installation\n\nThe Trajectools plugin can be installed directly in QGIS using the built-in Plugin Manager:\n\n![plugin manager](https://github.com/movingpandas/qgis-processing-trajectory/assets/590385/edd86ed3-8118-4163-bfe5-993b533e455c)\n\n**Figure 1: QGIS Plugin Manager with Trajectools plugin installed.**\n\n![Trajectools Toolbox](screenshots/toolbox.PNG)\n\n**Figure 2: Trajectools (v2.4) algorithms in the QGIS Processing toolbox**\n\n## Examples\n\nThe individual Trajectools algorithms are flexible and modular and can therefore be used on a wide array on input datasets, including, for example, the open [Microsoft Geolife dataset](http://research.microsoft.com/en-us/downloads/b16d359d-d164-469e-9fd4-daa38f2b2e13/) a [sample](https://github.com/emeralds-horizon/trajectools-qgis/tree/main/sample_data) of which is included in the plugin repo:\n\n![Trajectools Create Trajectory](https://github.com/movingpandas/qgis-processing-trajectory/assets/590385/3040ce90-552e-43a5-8660-17628f9b813a)\n\n![Trajectools Clip Trajectory](screenshots/trajectools2.PNG)\n\n![Trajectools Kalman Filter Smoothing](https://github.com/user-attachments/assets/e3bbf2e5-e551-4f3e-bd29-8d19bdc33137)\n\n![Trajectools GTFS Extract Segments](https://github.com/user-attachments/assets/62a6e60c-dedc-4e90-8059-2679302346db)\n\n\n## Presentations\n\n[**Trajectools: analyzing anything that moves.** QGIS User Conference 2025, 2-3 June 2025, Norrköping, Sweden.](https://youtu.be/T7haF1DPy2U)\n\n[![Trajectools presentation at QGISUC2025](screenshots/trajectoos-qgisuc25.png)](https://youtu.be/T7haF1DPy2U)\n\n\n## Citation information\n\nPlease cite [0] when using Trajectools in your research and reference the appropriate release version using the Zenodo DOI: https://doi.org/10.5281/zenodo.13847642\n\n[0] [Graser, A., \u0026 Dragaschnig, M. (2024, June). Trajectools Demo: Towards No-Code Solutions for Movement Data Analytics. In 2024 25th IEEE International Conference on Mobile Data Management (MDM) (pp. 235-238). IEEE.](https://drive.google.com/file/u/0/d/1OSzRuUwF1FwaPpl020PoDYdus4jtoqg8/view)\n\n```\n@inproceedings{graser2024trajectools,\n  title = {Trajectools Demo: Towards No-Code Solutions for Movement Data Analytics},\n  author = {Graser, Anita and Dragaschnig, Melitta},\n  booktitle = {2024 25th IEEE International Conference on Mobile Data Management (MDM)},\n  pages = {235--238},\n  year = {2024},\n  organization = {IEEE},\n  doi = {10.1109/MDM61037.2024.00048},\n}\n```\n\n## Acknowledgements\n\nThis work was supported in part by the Horizon Framework Programme of the European Union under grant agreement No. 101093051 ([EMERALDS](https://www.emeralds-horizon.eu/)).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmovingpandas%2Fqgis-trajectools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmovingpandas%2Fqgis-trajectools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmovingpandas%2Fqgis-trajectools/lists"}