自学内容网 自学内容网

python安装包中的一些问题(三):加载 matplotlib 的过程中,调用了 Pillow(PIL 库)时发生了错误

报错:

runfile('/Volumes/Expansion/Stuttgart/code_run/glacier_map_hugonnet/test_image_cut.py', wdir='/Volumes/Expansion/Stuttgart/code_run/glacier_map_hugonnet') Traceback (most recent call last): File /opt/anaconda3/lib/python3.11/site-packages/spyder_kernels/py3compat.py:356 in compat_exec exec(code, globals, locals) File /Volumes/Expansion/Stuttgart/code_run/glacier_map_hugonnet/test_image_cut.py:14 import matplotlib.pyplot as plt File /opt/anaconda3/lib/python3.11/site-packages/matplotlib/__init__.py:161 from . import _api, _version, cbook, _docstring, rcsetup File /opt/anaconda3/lib/python3.11/site-packages/matplotlib/rcsetup.py:27 from matplotlib.colors import Colormap, is_color_like File /opt/anaconda3/lib/python3.11/site-packages/matplotlib/colors.py:52 from PIL import Image File /opt/anaconda3/lib/python3.11/site-packages/PIL/Image.py:84 from . import _imaging as core

咨询chatgpt,有以下解决方案:

这个报错显示在加载 matplotlib 的过程中,调用了 PillowPIL 库)时发生了错误,而问题的根源与之前提到的缺失动态库 libtiff 类似。


解决方法

以下步骤可以帮助你解决问题:

方法 1:确保安装必要依赖

Pillow 依赖多个动态库,包括 libjpeglibpng, 和 libtiff 等。可以通过 Anaconda 安装这些依赖:

  1. 安装 libtiff 和 pillow

    conda install -c conda-forge pillow libtiff

  2. 检查 Pillow 是否工作正常:

    from PIL import Image print(Image.__version__)

    如果没有报错,说明问题解决。


方法 2:重装 matplotlib 和 Pillow

如果依赖未正确安装,重新安装相关库:

  1. 卸载并重装 matplotlib 和 Pillow

    pip uninstall matplotlib pillow pip install matplotlib pillow

  2. 如果使用 Conda 环境,执行:

    conda install -c conda-forge matplotlib pillow


方法 3:检查环境冲突

多个 Python 环境共存可能导致动态库冲突,尤其是 matplotlib 或 Pillow 引用了错误的库。

步骤
  1. 确认当前 Python 环境路径:

    which python

    输出路径应在你的 Conda 环境或虚拟环境中。

  2. 检查 Pillow 的安装路径:

    import PIL print(PIL.__file__)

    输出的路径应在你的 Conda 或虚拟环境中。

  3. 如果路径不一致,清理环境:

    • 删除问题库:

      pip uninstall pillow conda uninstall pillow

    • 重新安装:

      conda install -c conda-forge pillow


方法 4:手动安装动态库(macOS)

使用 Homebrew 安装缺失的动态库:

  1. 安装 libjpeglibtiff, 和其他依赖:

    brew install libjpeg libtiff libpng

  2. 验证路径是否正确:

    brew info libtiff

  3. 确保环境变量中包含动态库路径:

    export DYLD_LIBRARY_PATH="/usr/local/lib:$DYLD_LIBRARY_PATH"

结果均没有用,结果重装anaconda有效。估计是不同时间安装的包存在冲突,因此安装虚拟环境是必要且有效的。

❤️欢迎收藏点赞❤️


原文地址:https://blog.csdn.net/weixin_43047707/article/details/143997746

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!