Вы можете импортировать несколько файлов GPX одновременно, хотя вам будет предложено каждый файл для нужного слоя данных. С более чем 400 следами это не будет весело.
Вы можете посмотреть на ogr2ogr . Это швейцарский армейский нож преобразования геофайлов, он преобразует практически любой геоформат в любой другой совместимый (векторный / растровый) геоформат.
вызов ogr2ogr выглядит примерно так
ogr2ogr -f "ESRI Shapefile" example.shp example.gpx
Вы можете вызывать его программно (например, из скрипта Python, файла .bat или скрипта bash), чтобы перебирать каждую поездку * .gpx и преобразовывать ее, например, в шейп-файл.
Сказав это, я не смог заставить это работать на нескольких случайных трассировках gpx, которые я скачал с OpenStreetMap (ogrinfo их тоже не любил, хотя QGIS их загрузил). Но я смог открыть файлы GPX из другого источника.
Попробуйте запустить
ogrinfo example.gpx tracks
и посмотреть, если вы получите какой-либо полезный вывод. Если вы получили список драйверов, это не удалось.
Ваш пробег может варьироваться, это стоит того.
Обратите внимание, что у каждого шейп-файла будет свой собственный каталог, поэтому, если вам не нужны хлопоты по написанию кода, вместо этого вы можете попробовать CSV-файл ... см. Этот пост в блоге .
Чтобы выполнить объединение, вы можете (используя код) скопировать все шейп-файлы в один каталог, а затем использовать Инструменты вектора> Управление данными> Объединить шейп-файлы в один
Если вам нравится стиль hexbin, который вы иллюстрировали, вы можете посмотреть на плагин MMQgis . Это позволяет создавать гексагональные сетки, которые затем можно использовать для анализа «точек в многоугольнике».
for %p in (C:\Data\*.gpx) do ogr2ogr gpx.shp -append %p track_points -fieldTypeToString DateTime
. gpx.shp не должен существовать раньше, тогда ogr2ogr создает один шейп-файл.#!/bin/bash for i in $( ls ./*.gpx ); do ogr2ogr gpx.shp -append $i track_points -fieldTypeToString DateTime done