使用ydata_profiling的ProfileReport遇AttributeError错误求助
解决AttributeError: module 'matplotlib.cbook' has no attribute 'mplDeprecation' 问题
问题场景
在虚拟环境中使用ydata_profiling生成ProfileReport时触发以下错误:
AttributeError: module 'matplotlib.cbook' has no attribute 'mplDeprecation'
已尝试重装/升级matplotlib、ydata-profiling,清理site-packages内的matplotlib文件夹后重装,升级pip等操作,均未解决问题。
可行解决方案
1. 指定兼容的matplotlib版本
该错误源于ydata-profiling版本与新版matplotlib不兼容——mplDeprecation在新版matplotlib中已被移除。安装一个经验证兼容的版本即可,例如:
pip install matplotlib==3.7.1
注:可查看ydata-profiling的requirements.txt文件,确认其官方指定的matplotlib兼容版本范围,按需调整。
2. 排查并清理冲突依赖
- 先查看当前环境的所有依赖版本,确认是否有其他第三方包依赖旧版matplotlib的API:
pip freeze
- 若发现冲突包(如某些可视化库),先卸载该包,再重新安装兼容版
matplotlib和ydata-profiling。
3. 创建全新虚拟环境
旧环境中的残留缓存或隐性依赖冲突难以彻底清理时,直接创建全新环境:
- 退出当前虚拟环境,删除旧环境文件夹
- 创建新虚拟环境:
python -m venv new_venv
- 激活新环境后,按顺序安装依赖:
pip install matplotlib==3.7.1 pandas ydata-profiling
- 重新运行代码测试。
内容的提问来源于stack exchange,提问作者Lola
相关产品推荐
相关产品推荐

