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

使用pyenv虚拟环境调用msno.matrix()报错的问题求助

解决pyenv环境下missingno调用msno.matrix()报"grid_b is not recognized"错误

问题根源

这个错误源于missingno与matplotlib的版本不兼容:旧版missingno使用了matplotlib已移除的grid_b参数,pyenv环境中安装的matplotlib版本较新或missingno版本未适配最新matplotlib;而conda环境默认的包版本组合刚好兼容。

解决方案

  • 对齐conda环境的包版本

    1. 在正常工作的conda环境中执行命令,查看兼容版本:
      pip show missingno matplotlib
    2. 在pyenv目标虚拟环境中安装完全相同版本的两个包:
      pip install missingno==[conda中的版本号] matplotlib==[conda中的版本号]
  • 升级missingno到最新兼容版本
    卸载旧版并安装最新版missingno,新版本已修复matplotlib参数兼容问题:

    pip uninstall -y missingno
    pip install --upgrade missingno
    
  • 修复pyenv环境的Python依赖完整性
    若上述方法无效,可能是pyenv编译Python时缺少系统依赖,导致matplotlib安装不完整:

    1. 安装系统依赖(以Ubuntu/Debian为例):
      sudo apt-get install libpng-dev libfreetype6-dev pkg-config
    2. 卸载并重新编译目标Python版本:
      pyenv uninstall [你的Python版本,比如3.9.13]
      pyenv install [你的Python版本]
      
    3. 重新创建虚拟环境并安装missingno和matplotlib

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 14:48:21