You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Climada中engine模块导入失败问题求助(Python环境)

解决Climada engine模块导入KeyError: 'Stamen'问题

问题详情

  • 运行环境:Windows系统、VS Code编辑器、Python 3.9.19、miniforge3创建的climada_env虚拟环境
  • 异常表现:Climada的hazard、petal、entity等模块可正常导入,但执行代码from climada.engine import Impact, ImpactCalc时触发以下错误:

KeyError Traceback (most recent call last)
File c:\Users\XXX\miniforge3\envs\climada_env\lib\site-packages\xyzservices\lib.py:44, in Bunch.getattr(self, key)
43 try:
---> 44 return self.getitem(key)
45 except KeyError as err:

KeyError: 'Stamen'

  • 已尝试操作:手动导入xyzservies、更新该库,问题未解决

可行解决方案

1. 降级xyzservies至兼容版本

Stamen是xyzservies提供的地图瓦片服务,新版本可能移除了该服务导致Climada引用失败。执行以下命令降级:

pip install xyzservices==2023.10.1

2. 修改Climada中引用Stamen的代码(临时修复)

找到Climada engine模块中调用Stamen的位置(通常在可视化相关代码段),将Stamen替换为其他可用瓦片服务,例如OpenStreetMap:
原代码示例:

from xyzservices import Stamen
# 后续使用Stamen的代码

修改为:

from xyzservices import providers
# 替换为OpenStreetMap瓦片服务
tile_layer = providers.OpenStreetMap.Mapnik

3. 重新安装Climada核心包

确认虚拟环境依赖完整性,卸载并重新安装Climada相关包:

pip uninstall climada-core climada-engine -y
pip install climada-core climada-engine

内容的提问来源于stack exchange,提问作者LFG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 21:18:21