Я работал с построением данных GPX по пешеходным тропам. Я могу загрузить и извлечь все данные маршрута, но когда я рисую их в виде полилиний, они рисуют только небольшой сегмент. Я подтвердил, что файл готов, запустив функцию, которая прерывает файл GPX, создает фрейм данных широты и долготы и отображает их в виде маркеров или круговых маркеров. Это очень медленно для файлов, с которыми я работаю.
Код выглядит следующим образом:
library(rgdal)
library(maps)
library(htmltools)
library(devtools)
library(leaflet)
library(sp)
library(htmlwidgets)
library(plotKML)
library(maptools)
library(XML)
url <- "http://hiking.waymarkedtrails.org/en/routebrowser/1225378/gpx"
download.file(url, destfile = "pct.gpx", method = "wininet")
pct <- readOGR("pct.gpx", layer = "tracks")
# Import list with shapefiles of the three states the PCT is crossing
mapStates <- map("state", fill = TRUE,
plot = FALSE,
region = c('california', 'oregon', 'washington:main'))
your.map <- leaflet(pct) %>%
# Add layer
addTiles(urlTemplate = "http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png") %>%
addPolylines(color="red", popup="PCT") %>%
addMarkers(-116.4697, 32.60758, popup = "Campo") %>%
addMarkers(-120.7816, 49.06465, popup = "Manning Park, Canada") %>%
addPolygons(data=mapStates, fillColor = heat.colors(3, alpha = NULL), stroke = FALSE) %>%
# Add legend
addLegend(position = 'topright', colors = "red", labels = "PCT", opacity = 0.4,
title = 'Legend')
your.map
Этот код работает, вы получаете карту, закрашенную правильно, а маркеры находятся в нужном месте.
Однако отображается только один небольшой отрезок линии. В файле GPX 12 строк, которые я могу видеть, просматривая объект pct
, но, похоже, он рисует только одну. Независимо от того, какой файл GPX я скачиваю, это одна и та же проблема.