Streamlit搭配Folium时卡顿且地图点击触发重载的问题求助
Streamlit搭配Folium时卡顿且地图点击触发重载的问题求助
各位大佬好,我目前在做一个用Folium和Streamlit结合的项目,现在已经成功加载了两个数据集,还在地图上标了一个随机的红色标记。接下来想实现地图和鼠标点击的交互功能,但遇到了两个头疼的问题:
- 每次点击地图任意位置,整个页面都会触发重载,根本没法推进后续的交互逻辑
- 整体运行卡顿严重,Streamlit的响应速度慢得离谱
我本来想尽量避免在Folium地图里写JavaScript,没想到现在卡在了Streamlit这边。另外我用st.cache_data装饰器做了数据加载,不过这个函数写得比较粗糙,啥数据类型都塞进去处理了,代码如下:
@st.cache_data def load_data(file_url): if pathlib.Path(file_url).suffix == ".json": # df = pd.read_json(file_url) df = json.load(open(file_url)) elif pathlib.Path(file_url).suffix == ".xlsx": df = pd.read_excel(file_url, sheet_name="Sheet1") return df
附上当前运行状态的截图:
备注:内容来源于stack exchange,提问作者Ardie
相关产品推荐
相关产品推荐

