【发布时间】:2023-01-24 16:29:05
【问题描述】:
我正在使用 Python 创建带有库的热图
from pymongo import *
from geopy.geocoders import Nominatim
import folium
在这里,我生成了从 Cloud MongoDB Atlas 数据库中提取数据的脚本。
reviews_by_county = list(collection.aggregate([
{"$group": {"_id": "$County_en", "count": {"$sum": 1}}},
{"$sort": {"count": -1}}
]))
我还创建了一个函数来创建该热图
def Create_hitmap(reviews_by_county):
map = folium.Map(location=[35, 25], zoom_start=5)
geolocator = Nominatim(user_agent="geoapi", timeout=30)
# Iterate over the reviews_by_county and add a marker to the map for each county:
for county in reviews_by_county:
location = geolocator.geocode(county['_id'])
if location:
folium.Marker(location=[location.latitude, location.longitude],
popup=county['_id'] + ': ' + str(county['count'])).add_to(map)
else:
print(f"{county['_id']} not found")
# You can then save the map to an HTML file and view it in a web browser.
map.save("map.html")
最后,我正在调用提供其中列表的函数。
Create_hitmap(reviews_by_county)
我收到错误:
第 47 行,在 Create_hitmap 中 popup=county['_id'] + ': ' + str(county['count'])).add_to(地图) 类型错误:+ 不支持的操作数类型:“NoneType”和“str”
注意:我已经从我的数据中删除了 Null 值,但我仍然收到这样的错误。
【问题讨论】:
标签: python heatmap nonetype folium