library(sp) library(rgdal) # here, m ygpx files reside in subdirectories.. setwd("D:/WEB/gardaweb") files <- dir(pattern="*.gpx$", recursive = T, include.dirs = T) # extract spatial lines spl <- lapply(files, function(x) {readOGR(x, "tracks")@lines[[1]]} ) str(spl) # apply ID to ID slot for latter merge with attribute data for(i in 1:length(spl)) {slot(spl[[i]], "ID") <- as.character(i)} tracksSL <- SpatialLines(spl, proj4string = CRS("+proj=longlat +datum=WGS84")) # view data summary(tracksSL) plot(tracksSL) # make dataframe for merging with spatial data names <- sub("[.]gpx$", "", basename(files)) df <- data.frame(names = names, row.names = sapply(slot(tracksSL, "lines"), function(x) slot(x, "ID"))) # spatial dataframe tracksSLDF <- SpatialLinesDataFrame(tracksSL, data = df) # write ressult to KML writeOGR(tracksSLDF, dsn="tracks_collection.kml", layer= "Wolfi_Garda_Tracks", driver="KML", dataset_options=c("NameField=names"))
18 Oct 2016
Collect GPX-Files from Subdirectories and Convert to Single KML File
Reference: https://cran.r-project.org/web/packages/sp/vignettes/intro_sp.pdf
Subscribe to:
Posts
(
Atom
)