如何解决Folium GeoJson自定义颜色图
我尝试使用folium在地图上显示多部分的shapefile。代码如下:
import folium
import gdal
import geopandas as gpd
import branca.colormap as cm
gdf = gpd.read_file("field.shp")
def rank_colormap(gdf):
if gdf['RANK'] is 1.0:
return 'red'
if gdf['RANK'] is 2.0 or 3.0:
return 'orange'
if gdf['RANK'] is 4.0:
return 'gold'
if gdf['RANK'] is 5.0 or 6.0:
return 'yellow'
if gdf['RANK'] is 7.0:
return 'greenyellow'
if gdf['RANK'] is 8.0 or 9.0:
return 'lime'
elif gdf['RANK'] is 10.0:
return 'green'
#create map object
m = folium.Map(location=[49.112675,-104.104781],zoom_start=15)
folium.GeoJson(data=gdf,style_function=lambda feature: {
'fillColor': rank_colormap(gdf),'color': 'black','weight': '0.5','fill': True,'fill_opacity' : '1'
}).add_to(m)
tile = folium.TileLayer(
tiles = 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}',attr = 'Esri',name = 'Esri Satellite',overlay = False,control = True
).add_to(m)
legendcolormap = cm.LinearColormap(colors=['red','orange','gold','yellow','greenyellow','lime','green'],vmin=1,vmax=10)
legendcolormap.add_to(m)
#global tooltip
tooltip = 'Click For More Info'
gdf当前如下所示,我正在尝试将颜色映射到相应的“ RANK”值:
但是,我的fillcolor调整不正确,仅剩下一种颜色:
如何正确地将颜色图分配给我的叶片图?
解决方法
解决了:
Traceback (most recent call last):
File "Deauth.py",line 9,in <module>
p3 = subprocess.run(["airodump-ng","wlan0"],capture_output=True)
File "/usr/lib/python3.8/subprocess.py",line 491,in run
stdout,stderr = process.communicate(input,timeout=timeout)
File "/usr/lib/python3.8/subprocess.py",line 1024,in communicate
stdout,stderr = self._communicate(input,endtime,timeout)
File "/usr/lib/python3.8/subprocess.py",line 1866,in _communicate
ready = selector.select(timeout)
File "/usr/lib/python3.8/selectors.py",line 415,in select
fd_event_list = self._selector.poll(timeout)
KeyboardInterrupt
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。