我想知道在OpenStreetMap上绘制多个坐标(150 万)的最直接和最快的方法是什么。
它必须能够在Jupyter Notebook中内联显示。
我一直在尝试使用Folium
模块和列表理解:
import folium
import datetime as dt
import random as rnd
t0 = dt.datetime.now()
#New York City Coordinates
NYC_COORD = [40.7128, -74.0059]
# Sample (0.33% over 1.5 million)
sample_coords = rnd.sample(list(coords),5000)
# Build map
map_nyc = folium.Map(location=NYC_COORD, zoom_start=12,
tiles='cartodbpositron', width=640, height=480)
# Plot coordinates using comprehension list
[folium.CircleMarker(sample_coords[i], radius=1,
color='#0080bb', fill_color='#0080bb').add_to(map_nyc)
for i in range(len(sample_coords))]
# Display map in Jupyter
map_nyc
t1 = dt.datetime.now()
print('Total time: %i seconds' % (t1 - t0).seconds)
总时间:33秒
如您所见,33 秒。如果我们真的想绘制 1.5M,那真的是很长的时间。那么,有人知道是否可以改善那个时间?