Leaflet 在传单上绘制许多数据并绘制道路线

Leaflet 在传单上绘制许多数据并绘制道路线,leaflet,openstreetmap,polyline,react-leaflet,Leaflet,Openstreetmap,Polyline,React Leaflet,我想做一些事情,比如在我的网页谷歌地图的交通状况,我使用反应和传单(反应传单)在前端。我在城市里有数百万个点,格式像[纬度,经度,方位,速度] 我试图盲目地将数据绘制为标记或多段线,当然,浏览器加载似乎要花很长时间 似乎我需要完成以下任务,但我不知道如何实现这些任务: 从某处获取道路信息(在openstreet地图中是否称为“道路”) 找到一些算法将点映射到道路 平均每个路段的点速度,但保持方向不变 根据路段绘制直线 是否有人能为我指出一些如何实现这些目标的方向,特别是1和2?非常感谢。您描述的

我想做一些事情,比如在我的网页谷歌地图的交通状况,我使用反应和传单(反应传单)在前端。我在城市里有数百万个点,格式像[纬度,经度,方位,速度]

我试图盲目地将数据绘制为标记或多段线,当然,浏览器加载似乎要花很长时间

似乎我需要完成以下任务,但我不知道如何实现这些任务:

  • 从某处获取道路信息(在openstreet地图中是否称为“道路”)
  • 找到一些算法将点映射到道路
  • 平均每个路段的点速度,但保持方向不变
  • 根据路段绘制直线
  • 是否有人能为我指出一些如何实现这些目标的方向,特别是1和2?非常感谢。

    您描述的是一系列需要解决的问题。你最好把它分成几个部分,试着解决每一个问题,并在展示你的努力的同时寻求帮助

    我会尽力指出一些需要考虑的困难/条件,以提供帮助

    • 仅使用前端解决方案很难实现项目。在前端将所有数据作为矢量数据加载将显著增加加载时间,并可能很快导致延迟,通常会导致糟糕的用户体验。考虑使用空间服务器(例如GeoServer)来服务WMS或WFS(例如BBox策略)。
    • 您希望根据点的值为路段指定值。但首先,你需要决定你想在哪里发生。前端?后端?我建议使用后者,但这意味着没有PostGIS,你可能无法逃脱。此外,您必须下载整个道路数据集,这意味着您可能必须限制您的区域(或者您必须处理大量数据)

    • 如果您想使用前端解决方案,则需要在矢量数据中获取道路(例如,从矢量平铺中获取),使用线创建GeoJson(为每一条线指定一个值),并将线捕捉到道路(例如,使用Turf.js)。或者,您可以尝试使用地图匹配服务捕捉生成的多段线(例如OSRM、Mapbox地图匹配API)