我有一段代码,是从实际数据科学食谱书中学来的,他们使用了folium和twitter来绘制twitter粉丝的地理位置。代码能正常运行,最后输出一个HTML文件,应该在地图上标记出你的粉丝所在位置。然而,我的地图没有任何标记,尽管已经有了数据。
以下是代码:
status_geo = []
status_geo_screen_names = []
for fp in friends_profiles:
if ('status' in fp and fp['status']['geo'] is not None and 'screen_name' in fp):
status_geo.append(fp['status']['geo'])
status_geo_screen_names.append(fp['screen_name'])
print status_geo
输出结果: [{u'类型': u'点', u'坐标': [37.27647779,-121.98564579]}, {u'类型': u'点', u'坐标': [33.64158125,-84.43924375]}, {u'类型': u'点', u'坐标': [33.81747122,-116.52908589]}, {u'类型': u'点', u'坐标': [34.01340657,-118.17538228]}, {u'类型': u'点', u'坐标': [38.7974924,-76.1285375]}, {u'类型': u'点', u'坐标': [43.579385,-116.198543]}, {u'类型': u'点', u'坐标': [51.69102332,-0.41811924]}, {u'类型': u'点', u'坐标': [40.494286,-74.44376]}, {u'类型': u'点', u'坐标': [53.60089695,-113.49052185]}]
print status_geo_screen_names
输出: [u'TicaCoffee',u'sekouandrews',u'Kimtuitive',u'isalsa4u',u'ConsWahoo',u'cre8commongood',u'BrookeHRob',u'pedrohernandez',u'khueggen',u'DMCONCREPUMP',u'PhillipLeslie' ...]
import folium
from itertools import izip
#Let Folium determine the scale
map = folium.Map(location=[38, -120],zoom_start=3)
for sg, sn in izip(status_geo, status_geo_screen_names):
map.simple_marker(sg['coordinates'], popup=str(sn))
map.create_map(path='us_states.html')
我们应该看到像这样的东西:
![在此输入图片描述](https://istack.dev59.com/6z2g1.webp)
![在此输入图片描述](https://istack.dev59.com/TbAsI.webp)