使用folium遇AttributeError:Map对象无create_map属性求解决
解决folium中
AttributeError: Map object has no attribute 'create_map'的问题 嘿,这个坑我之前也踩过!这完全是folium版本更新带来的API变化——官方已经把旧的create_map()方法移除了,换成了更简洁易用的新写法。
问题根源
folium在0.10.0及之后的版本里,彻底弃用了create_map()这个旧方法,所以你调用它时会触发属性不存在的错误,用dir(folium.Map)自然也找不到这个方法的身影。
解决方案
根据你的使用场景,替换成对应的新方法即可:
保存地图到HTML文件
原来的旧代码:m = folium.Map(location=[45.523, -122.675]) m.create_map(path='my_map.html')直接替换为:
m = folium.Map(location=[45.523, -122.675]) m.save('my_map.html')在Jupyter Notebook中直接显示地图
不需要调用任何额外方法,直接打印Map对象就能渲染出地图:m = folium.Map(location=[45.523, -122.675]) m # 或者执行print(m)获取地图的HTML字符串
如果需要把地图HTML嵌入到其他页面中,可以用render()方法获取源码:m = folium.Map(location=[45.523, -122.675]) map_html = m.render()
额外提示
- 可以用
pip show folium命令查看你当前的folium版本,确认是否为较新版本。 - 不建议降级到旧版本来使用
create_map(),旧版本存在不少bug和安全隐患,而且官方早已停止维护这套旧API。
内容的提问来源于stack exchange,提问作者Seraphyn
相关产品推荐
相关产品推荐

