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

解决Plotly绘制新冠疫情动态地图时出现KeyError: Timestamp报错问题

问题修复方案

报错根本原因

旧版本Plotly的animation_frame参数不直接支持datetime64/Timestamp类型的数据,内部映射处理时无法识别时间戳对象,因此触发KeyError。

可行解决方法

方法1:将日期列转为字符串类型(兼容性最好,全版本适用)

在完成分组聚合后,将Date列转为格式化字符串即可,修改代码如下:

df_datecountry = df.groupby(['Date', 'Country']).sum().reset_index().sort_values('Date', ascending = True)
# 新增这一行,将datetime转为%Y-%m-%d格式的字符串
df_datecountry['Date'] = df_datecountry['Date'].dt.strftime('%Y-%m-%d')

fig = px.choropleth(df_datecountry, 
                    locations = 'Country', 
                    locationmode = 'country names',
                    color = 'Confirmed',
                    hover_name = 'Country', 
                    animation_frame = 'Date')

如果需要调整滑块的显示样式,可以额外添加布局配置:

fig.update_layout(
    sliders=[{
        "currentvalue": {"prefix": "观测日期:"}
    }]
)
fig.show()

方法2:升级Plotly到最新版本

新版本Plotly已经修复了时间类型作为动画帧参数的兼容问题,执行以下命令升级后不需要修改原有代码即可运行:

pip install --upgrade plotly

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 00:30:02