Socket
Socket
Sign inDemoInstall

gpx-converter

Package Overview
Dependencies
3
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

gpx-converter

Python package for manipulating gpx files and easily convert gpx to other different formats.

    2.1.0

Maintainers
1

Readme

============= gpx-converter

.. image:: https://github.com/nidhaloff/gpx-converter/blob/master/assets/icon.png :width: 100 :align: center :alt: gpx-converter-icon

|

.. image:: https://img.shields.io/pypi/v/gpx-converter.svg :target: https://pypi.python.org/pypi/gpx-converter

.. image:: https://img.shields.io/travis/nidhaloff/gpx-converter.svg :target: https://travis-ci.com/nidhaloff/gpx-converter

.. image:: https://readthedocs.org/projects/gpx-converter/badge/?version=latest :target: https://gpx-converter.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status .. image:: https://img.shields.io/pypi/wheel/gpx-converter :alt: PyPI - Wheel :target: https://pypi.python.org/pypi/gpx-converter

.. image:: https://pepy.tech/badge/gpx-converter :target: https://pepy.tech/project/gpx-converter

.. image:: https://img.shields.io/pypi/l/gpx-converter :alt: PyPI - License :target: https://pypi.python.org/pypi/gpx-converter

.. image:: https://img.shields.io/twitter/url?url=https%3A%2F%2Ftwitter.com%2FNidhalBaccouri :alt: Twitter URL :target: https://twitter.com/NidhalBaccouri

GPX manipulation for humans

Python package for manipulating gpx files and easily convert gpx to other different formats.

When & Why

  • You need to convert GPX to other formats
  • You need to convert other formats like csv to GPX
  • You want to interpolate the GPX coordinates
  • High level of abstraction
  • Stable API
  • easy to use and to extend

Motivation

I decided to create this project because I had gpx data that I needed to manipulate. I searched for a python package for this but I did not find what I was looking for, therefore I created the gpx-converter package to make gpx files manipulation very easy. Furthermore, the package contains methods for applying interpolation on the gpx data. This feature was very helpful for me since I also needed to interpolate the gpx data and convert it to csv. Feel free to contribute or to give me feedback anytime :)

Features

  • Convert gpx files to other formats such as csv, numpy arrays, dataframes, excel and json
  • Convert csv files to gpx
  • Apply interpolation on the gpx data

Installation

.. code-block:: console

$ pip install -U gpx-converter

Quick Usage

.. code-block:: python

from gpx_converter import Converter

Just read the gpx to dictionary

.. code-block:: python

dic = Converter(input_file='your_input.gpx').gpx_to_dictionary(latitude_key='latitude', longitude_key='longitude')
# now you have a dictionary and can access the longitudes and latitudes values from the keys
latitudes = dic['latitude']
longitudes = dic['longitude']

Convert GPX to other formats

  • Convert from gpx to csv:

.. code-block:: python

Converter(input_file='your_input.gpx').gpx_to_csv(output_file='your_output.csv')
  • Convert from gpx to excel sheets:

.. code-block:: python

Converter(input_file='your_input.gpx').gpx_to_excel(output_file='your_output.xlsx')
  • Convert from gpx to json:

.. code-block:: python

Converter(input_file='your_input.gpx').gpx_to_json(output_file='your_output.json)
  • Convert gpx file to dataframe:

.. code-block:: python

df = Converter(input_file='your_input.gpx').gpx_to_dataframe()
  • Convert gpx file to numpy array:

.. code-block:: python

np_array = Converter(input_file='your_input.gpx').gpx_to_numpy_array()

Now convert other formats to GPX

  • csv to gpx

.. code-block:: python

Converter(input_file='your_input.csv').csv_to_gpx(lats_colname='column_name_of_latitudes',
                                                 longs_colname='column_name_of_longitudes',
                                                 output_file='your_output.gpx')
  • excel to gpx

.. code-block:: python

Converter(input_file='your_input.xlsx').excel_to_gpx(lats_colname='column_name_of_latitudes',
                                                 longs_colname='column_name_of_longitudes',
                                                 output_file='your_output.gpx')
  • dataframe to gpx (notice that the method is static)

.. code-block:: python

Converter.dataframe_to_gpx(input_df=your_df,
                           lats_colname='column_name_of_latitudes',
                           longs_colname='column_name_of_longitudes',
                           output_file='your_output.gpx')
  • json to gpx

.. code-block:: python

Converter(input_file='your_input.json').json_to_gpx(input_df=your_df,
                                                   lats_colname='column_name_of_latitudes',
                                                   longs_colname='column_name_of_longitudes',
                                                   output_file='your_output.gpx')
  • Automate the conversion of multiple csv file to gpx:

.. code-block:: python

Converter.convert_multi_csv_to_gpx(dirpath='your_directory/')
  • Apply spline interpolation on gpx file (you need to install scipy for this to work):

.. code-block:: python

interpolated_coordinates = Converter.spline_interpolation(cv=your_array_of_control_vertices)

Usage from terminal

Alternatively you can use the gpx_converter directly from terminal. You just need to pass the function, input file and output file as arguments.

  • function: the conversion method you want to use. For example "gpx_to_csv"
  • input file: path to your input file
  • output file: path to your output file

.. code-block:: console

$ gpx_converter --function "gpx_to_csv" --input_file "home/your_input.gpx" --output_file "home/your_output.csv"

or maybe you prefer the short version

.. code-block:: console

$ gpx_converter -func "gpx_to_csv" -in "home/your_input.gpx" -out "home/your_output.csv"

Check this article to know more about gpx files and how to use the gpx-converter package. https://medium.com/p/57da00bd36fc/edit

Contributions

Contributions are always welcome. Make sure you check the guidlines first https://gpx-converter.readthedocs.io/en/latest/contributing.html

Keywords

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc