我想将其他空间坐标合并到预先存在的空间线中。
我的数据:
- 表示海岸线的空间坐标。
- 表示观测的空间坐标。
观测值不一定与线上的坐标相匹配,因此我将观测值与线对齐。这为观察提供了一个新坐标:它在预先存在的线上的位置。
我想将这个新坐标合并到原始空间线数据中,在正确的位置,这样它就不会破坏原始坐标沿线的正确顺序。
我研究了sp
对象操作,但无法弄清楚如何生成我所追求的数据结构。
# Pre-existing line
> head(grpCoords)
LONG LAT
[1,] 140.6615 -8.846777
[2,] 140.5811 -8.728320
[3,] 140.4897 -8.620410
[4,] 140.1017 -8.300586
[5,] 140.0029 -8.195508
[6,] 139.9833 -8.166504
# Observation
> xy
[,1] [,2]
[1,] 167 -45
# New coordinate for observation on the line
> dist2Line(xy, grpCoords)
distance lon lat
[1,] 4123324 150.4824 -10.63691
例如:对于表示直线的 XY 坐标:
XY[1,1] _ _ _ _ _ _ _ XY[1,9] _ _ XY[1,12]
在哪里:
LONG LAT
1 1
1 9
1 12
如果观察到的坐标是 XY[1,8],我希望:
XY[1,1] _ _ _ _ _ _ XY[1,8] XY[1,9] _ _ XY[1,12]
合并后的数据为:
LONG LAT
1 1
1 8
1 9
1 12