将 Lat Lng 转换为 Leaflet 的坐标

Convert Lat Lng to Coordinates for Leaflet

我正在处理一个数据集,该数据集已使用 Jupyter Notebook 通过 sqlalchemy 和 Pandas 数据帧从 csv 转换为 postgres,然后通过 flask 应用程序转换为 json。

我想使用 json 中的 lat/lng 字段来创建可用于传单映射的标记位置。

我似乎无法弄清楚如何将 lat/lng 值组合到 [40.77888899, -73.97]

这样的位置

lat/lng 字段各自采用正确的格式,但以我尝试过的任何方式将字段连接成一个字段似乎创建了创建标记函数不接受的字符串值:

这里是 json 的一个例子,它可以满足我的要求:

{
  "age": "Juvenile", 
  "date": 10062018, 
  "lng": -73.9762246600197, 
  "lat": 40.775164077652, 
  "shift": "AM", 
  "id": "10A-AM-1006-03",
  "location": [40.775164077652, -73.9762246600197]
}   *The location field in the above was added manually to demonstrate

这是我的资料:

  {
    "age": "Adult", 
    "date": 10062018, 
    "lng": -73.97624942, 
    "lat": 40.77501753, 
    "shift": "AM", 
    "id": "10A-AM-1006-01"
    "location": "40.77501753, -73.97624942"
  }

第二个示例中的位置字段:“location”:“40.7750175306716,-73.9762494239719”,是在 excel 中使用 concat 为 lat 和 lng 在原始 csv 中创建的。原始 csv 数据集没有该格式的位置列。

我曾尝试在 JavaScript 中为 lat 和 lng 创建变量,然后使用 [lat, lng] 作为标记,但没有成功。

关于如何创建我需要的字段类型的任何建议,无论是在原始 csv 中,在将 csv 转换为数据帧时,在转换为 sql 之后,还是在 javascript 中使用json数据?如何仅使用 json 中的原始 lat/lng 值作为标记接受的位置类型传单?

您可以直接从 json L.marker([json.lat,json.lng]).addTo(map)

使用 latlng

这是一个简单的例子:https://jsfiddle.net/falkedesign/54hoaerx/

PS:我认为latlng需要调换一下,还是你真的想把标记放在南极而不是纽约?