跳转到主要内容

Python包,用于操作gpx文件并将gpx轻松转换为其他不同格式。

项目描述

gpx-converter-icon

https://img.shields.io/pypi/v/gpx-converter.svg https://img.shields.io/travis/nidhaloff/gpx-converter.svg Documentation Status PyPI - Wheel https://pepy.tech/badge/gpx-converter PyPI - License Twitter URL

为人类操作GPX

Python包,用于操作gpx文件并将gpx轻松转换为其他不同格式。

何时以及为什么

  • 您需要将GPX转换为其他格式

  • 您需要将其他格式如csv转换为GPX

  • 您想插值GPX坐标

  • 高抽象级别

  • 稳定的API

  • 易于使用和扩展

动机

我决定创建这个项目,因为我有需要操作 gpz 数据。我搜索了相关的 Python 包,但没有找到我想要的,因此我创建了 gpx-converter 包,使 gpz 文件的操作变得非常简单。此外,该包包含对 gpz 数据进行插值的函数。这个功能对我非常有帮助,因为我还需要对 gpz 数据进行插值并将其转换为 csv 格式。请随时贡献或提供反馈 :)

功能

  • 将 gpz 文件转换为其他格式,例如 csv、numpy 数组、dataframes、excel 和 json

  • 将 csv 文件转换为 gpz

  • 对 gpz 数据应用插值

安装

$ pip install -U gpx-converter

快速使用

from gpx_converter import Converter

只需读取 gpz 为字典

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']

将 GPX 转换为其他格式

  • 从 gpz 转换为 csv

Converter(input_file='your_input.gpx').gpx_to_csv(output_file='your_output.csv')
  • 从 gpz 转换为 excel 工作表

Converter(input_file='your_input.gpx').gpx_to_excel(output_file='your_output.xlsx')
  • 从 gpz 转换为 json

Converter(input_file='your_input.gpx').gpx_to_json(output_file='your_output.json)
  • 将 gpz 文件转换为 dataframe

df = Converter(input_file='your_input.gpx').gpx_to_dataframe()
  • 将 gpz 文件转换为 numpy 数组

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

现在将其他格式转换为 GPX

  • csv 转换为 gpx

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 转换为 gpx

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 转换为 gpx(注意该方法为静态的)

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 转换为 gpx

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')
  • 自动将多个 csv 文件转换为 gpx

Converter.convert_multi_csv_to_gpx(dirpath='your_directory/')
  • 对 gpz 文件应用样条插值(为此需要安装 scipy)

interpolated_coordinates = Converter.spline_interpolation(cv=your_array_of_control_vertices)

终端使用

或者您可以直接从终端使用 gpx_converter。您只需将函数、输入文件和输出文件作为参数传递即可。

  • 函数:您想要使用的转换方法。例如,“gpx_to_csv”

  • 输入文件:输入文件的路径

  • 输出文件:输出文件的路径

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

或者您可能更喜欢简短版本

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

贡献

贡献总是受欢迎的。请确保首先查看指南 https://gpx-converter.readthedocs.io/en/latest/contributing.html

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

gpx_converter-2.1.0.tar.gz (18.5 kB 查看哈希)

上传时间

构建分布

gpx_converter-2.1.0-py2.py3-none-any.whl (8.1 kB 查看哈希)

上传时间 Python 2 Python 3

支持者