原始数据是三列,经度、纬度、和状态信息,如下图所示(举例):
需要用folium画出地图,按照第三列状态信息来标注不同点的颜色,请大神指教?
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,目前超出我们的服务范围,暂时无法为您解答。
首次提问人员可免费体验一次有问必答服务。目前首次提问的问题服务范围为:编程语言、Java开发、python、数据库、前端开发 领域专业技术问题,为您提供问题的解决思路和指导。不提供源码代写、项目文档代写、论文代写、安装包资源发送或安装、软件使用指导等服务。
我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。
大家好,经过昨天的研究,基本上找到问题的答案,当前folium中CircleMarker支持上述的画法,除了生成的图有点慢,其他没有毛病,附上代码
def map_draw(self,data): drive_data = data df = pd.DataFrame(drive_data,columns=['lat','lon','col']) data_len = len(drive_data) start_location = drive_data[0][0:2] end_location = drive_data[data_len-1][0:2] m = folium.Map(location=start_location, zoom_start=15, tiles='https://mt.google.com/vt/lyrs=s&x={x}&y={y}&z={z}', attr='default') #GPS坐标,基于卫星导航数据,google地图同样基于卫星数据,tiles指定选用google卫星地图,无需坐标转化 for index, row in df.iterrows(): folium.CircleMarker((row['lat'],row['lon']), radius=2,color= row['col']).add_to(m)
def map_draw(self,data):
drive_data = data
df = pd.DataFrame(drive_data,columns=['lat','lon','col'])
data_len = len(drive_data)
start_location = drive_data[0][0:2]
end_location = drive_data[data_len-1][0:2]
m = folium.Map(location=start_location,
zoom_start=15,
tiles='https://mt.google.com/vt/lyrs=s&x={x}&y={y}&z={z}',
attr='default') #GPS坐标,基于卫星导航数据,google地图同样基于卫星数据,tiles指定选用google卫星地图,无需坐标转化
for index, row in df.iterrows():
folium.CircleMarker((row['lat'],row['lon']), radius=2,color= row['col']).add_to(m)
colors=list(folium.Icon.color_options)
folium.Marker([i[1],i[0]],
icon=folium.Icon(colors[j])).add_to(m)
用这个不简单多了
哈哈哈