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

Python 3.5.2(Ubuntu 16.04 LTS)下安装matplotlib遇问题求助

解决Matplotlib安装与Setuptools权限报错问题

嘿,我来帮你捋清楚这个问题!首先你最初的安装命令里有个小失误——把pip install matplotlib和pip install --upgrade setuptools连在一起写了,导致命令解析错误,这是第一个需要修正的点。接下来咱们一步步解决权限和依赖问题:

1. 先修正初始命令的语法错误

你原本执行的命令是:

sudo env 'PATH=$PATH:/home/lukasz/.local/bin' pip install matplotlibpip install --upgrade setuptools

这里matplotlib后面直接跟了pip,属于语法错误,应该拆成两个独立命令,或者先升级setuptools再安装matplotlib:

# 先升级setuptools
sudo env 'PATH=$PATH:/home/lukasz/.local/bin' pip install --upgrade setuptools
# 再安装matplotlib
sudo env 'PATH=$PATH:/home/lukasz/.local/bin' pip install matplotlib

2. 解决Setuptools升级的权限问题

你遇到的PermissionError是因为直接用sudo修改系统级Python包目录时,缓存文件可能被锁定或者权限异常。这里有几个更靠谱的解决方案:

方案一:用--user参数安装到用户目录(最推荐)

不需要sudo,直接给当前用户安装升级,完全不会触碰系统级目录,避免权限问题:

pip install --upgrade setuptools --user
pip install matplotlib --user

安装后的包会放在/home/lukasz/.local/lib/python3.5/site-packages,而你的PATH已经包含了/home/lukasz/.local/bin,后续调用matplotlib不会有任何问题。

方案二:删除报错的缓存文件后重试

如果一定要安装到系统级目录,先手动删除那个被锁定的缓存文件,再重新执行升级命令:

sudo rm /usr/lib/python3/dist-packages/__pycache__/easy_install.cpython-35.pyc
sudo env 'PATH=$PATH:/home/lukasz/.local/bin' pip install --upgrade setuptools

方案三:使用Python虚拟环境(长期开发最稳妥)

虚拟环境可以彻底隔离项目依赖,再也不会出现系统包冲突或权限问题:

  1. 创建一个虚拟环境(放在你喜欢的目录,比如用户根目录):
python3 -m venv ~/my_python_env
  1. 激活虚拟环境:
source ~/my_python_env/bin/activate
  1. 此时直接升级setuptools并安装matplotlib,完全不需要sudo:
pip install --upgrade setuptools
pip install matplotlib

用完虚拟环境后,执行deactivate就能回到系统默认环境。

3. 验证安装是否成功

不管用哪种方案,安装完成后可以打开Python终端验证:

import matplotlib
print(matplotlib.__version__)

如果能正常输出版本号,就说明安装成功啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:42:17