我有一个使用以下代码生成的纽约市某个社区的folium地图:
m = folium.Map(location=[40.7035, -73.990],
zoom_start=16.5,
tiles='cartodbpositron')
我尝试使用
folium.PolyLine()
添加连接地图上点的线路,但即使我在调用m._children
时看到它们已列出,它们也不会显示在地图上。以下是创建线路的代码,其中G是一个networkx图:
for x, y in G.edges():
points = [nx.get_node_attributes(G, 'loc')[x], nx.get_node_attributes(G, 'loc')[y]]
egde = folium.PolyLine(locations=points, weight=5, color='red')
edge.add_to(m)
一个示例
点
:[(-73.986635, 40.703988), (-73.988683, 40.702674)]
m.children
的输出结果(前几行):
OrderedDict([('cartodbpositron',
<folium.raster_layers.TileLayer at 0x12279feb8>),
('poly_line_ae5785771a2148c5a8559cb0085b10a4',
<folium.vector_layers.PolyLine at 0x122892128>),
('poly_line_ee73b495559940d484064e8c8492eda5',
<folium.vector_layers.PolyLine at 0x1229734a8>),
('poly_line_415a7ed70a2a425e876c8a6711408a6a', ...
你有什么想法我可能做错了什么吗?
y, x
,而你传入的是x, y
。 - Bob Haffner