M. *_*ILI 5 python icons popup geojson folium
我想在地图上有一堆点,带有红色图标,当您单击它时会弹出一些文本。我需要使用 features.GeoJson,因为我还将在特定图层上创建搜索,所以我不能使用 features.Marker。
我检查了这个例子:https://nbviewer.jupyter.org/github/python-visualization/folium/tree/master/examples/但他们没有说每个点的属性字典的哪个键改变这个颜色。关于弹出窗口,即使我将其添加为子项,它也不起作用。
这里是代码:
import folium
from folium import features
m = folium.Map([0, 0], zoom_start=1)
points_ = {'type': 'FeatureCollection',
'features': [{'type': 'Feature',
'properties': {'Codice': 500732, 'Categoria': 'D1', 'Cluster': 3},
'geometry': {'type': 'Point', 'coordinates': [12.34117475, 45.75345246]},
'id': '0'},
{'type': 'Feature',
'properties': {'Codice': 500732, 'Categoria': 'A2', 'Cluster': 3},
'geometry': {'type': 'Point', 'coordinates': [12.34117475, 45.75345246]},
'id': '1'}]}
pp = folium.Popup("hello")
ic = features.Icon(color="red")
gj = folium.GeoJson(points)#, tooltip=tooltip)
gj.add_child(ic)
gj.add_child(pp)
m.add_child(gj)
m
Run Code Online (Sandbox Code Playgroud)
标准图标仅从https://cdn.jsdelivr.net/npm/leaflet@1.6.0/dist/images/marker-icon.png加载
所以你可以使用这样的东西来改变它的颜色
或者您可以使用不同的内置图标:
points = {'type': 'FeatureCollection',
'features': [{'type': 'Feature',
'properties': {'Codice': 500732, 'Categoria': 'D1', 'Cluster': 3},
'geometry': {'type': 'Point', 'coordinates': [12.34117475, 45.75345246]},
'id': '0'},
{'type': 'Feature',
'properties': {'Codice': 500732, 'Categoria': 'A2', 'Cluster': 3},
'geometry': {'type': 'Point', 'coordinates': [12.32117475, 45.72345246]},
'id': '1'}]}
gj = folium.GeoJson(points)
feature_group = folium.FeatureGroup('markers')
for feature in gj.data['features']:
if feature['geometry']['type'] == 'Point':
folium.Marker(location=list(reversed(feature['geometry']['coordinates'])),
icon=folium.Icon(color='red'),
popup='Hello',
Categoria=feature['properties']['Categoria']
).add_to(feature_group)
feature_group.add_to(m)
Search(
layer=feature_group,
search_label="Categoria",
).add_to(m)
m
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3663 次 |
| 最近记录: |