【发布时间】:2020-11-06 20:23:49
【问题描述】:
假设有两个经度/纬度坐标列表。我在地图上绘制这些坐标,并将列表 1 中的每个点用直线连接起来,将列表 2 中的每个点用直线连接起来。
这是一个数据框,其中包含这两个列表的示例经度和纬度:
long_1<- c(-87, -85.927, -83.8056)
long_2<- c(-87, -85.4729, -83.1944)
lat_1<- c(17.8,18.969, 20.31)
lat_2<- c(17.8, 18.23, 19.0881)
df<- data.frame(long_1,long_2,lat_1, lat_2)
leaflet() %>% addTiles() %>%
addPolylines(data = df, lng = ~long_1, lat = ~lat_1) %>%
addPolylines(data = df, lng = ~long_2, lat = ~lat_2) %>%
setView(-93.65, 42.0285, zoom = 4)
我正在尝试创建一个函数,该函数将输入一个经度和纬度点,如果该点落在这些线的连接所创建的边界范围内,则返回 true,如果该点不在则返回 false。
老实说,我不知道该怎么做。任何想法将不胜感激!
【问题讨论】:
-
如果你把这些点
...addMarkers(lng =-85.927, lat =18.7)%>% addMarkers(lng =-84.2, lat =18.5),是同时进还是一进一出(先进,后出)? -
@s__。我道歉。我在 lat_1 中的第三个纬度值上打错了字。应该是 20.31,而不是 18.231。我会纠正那个。
-
进行更改后,第一个点将在边界内,第二个点将在边界外。