从多个GPS坐标计算到最近岸的距离

时间:2015-10-14 07:40:56

标签: r loops dictionary polygon distance

我尝试使用this question的响应来解决这个问题,但由于我在全球范围内分布了许多坐标,所以我无法应用它。

有没有人能够通过循环计算从一系列点到最近岸的最小距离(以km为单位)?这是我使用的(DATA HERE)

点的子集
#setwd and load directories----
setwd("your_wd")
  require (ggplot2)
  require (ggmap)

#build a map to plot distribution of sample sites ----
sites<-read.csv("sites.csv", header=T)

#Using GGPLOT, plot the Base World Map
mp <- NULL
mapWorld <- borders("world", colour="gray50", fill="gray50") # create a layer of borders
mp <- ggplot() +   mapWorld
#Now Layer the sites on top
Lon<-sites$x
Lat<-sites$y
mp <- mp+ geom_point(aes(x=Lon, y=Lat),color="blue", size=3) 
mp

Distribution of sites

1 个答案:

答案 0 :(得分:2)

查看rgeos

library(rgeos)
gDistance(spPoints, spPolygon, byid = TRUE)

spPoints将是一个包含坐标的SpatialPoints对象。 spPolygon将成为带有大陆的SpatialPolygons个对象。请参阅sp包。确保两个对象具有相同的投影并具有合理的投影。