如何使用Folium绘制实时数据?

问题描述 投票:0回答:1

我用Jupyter Notebook写了一个小脚本,目标是实时绘制国际空间站的位置。

下面是这个脚本。

import folium
import requests 
from time import sleep
#plot a base map
world = folium.Map(location=[0, 0],
                  tiles='Stamen Terrain',
                  zoom_start=2, detect_retina=True)
i = 0
while True:
    #get the data
    response = requests.get("http://api.open-notify.org/iss-now.json")
    data = response.json()
    # parse the results 
    lat = data['iss_position']['latitude']
    long = data['iss_position']['longitude']
    print(lat, long)
    #show(lat, long) on the map
    folium.Circle(
        radius=1000,
        location=[lat, long], #use lat, long
        popup='International Space Station',
        color='red',
        fill=False,
        ).add_to(world)
    sleep(5)    
    world # does not work!
    i += 1

问题: 在循环结束时,我想绘制地图,但没有成功。如何在地图上绘制国际空间站的实时位置?有什么建议吗?先谢谢你。

(当我把 world 在while循环之外,它的工作)。)

python python-3.x jupyter-notebook geolocation folium
1个回答
0
投票

据我所知,你不能通过Folium的新数据动态更新地图(如 Folium 0.10.1) .

例如,你应该使用 小册子而不是。

© www.soinside.com 2019 - 2024. All rights reserved.