关于剧情:如何在ubuntu上使用pip升级python3的matplotlib?

How can I upgrade matplotlib for python3 using pip on ubuntu?

我在Ubuntu 16.04.4 LTS上。目前正在学习朱莉娅。朱莉娅使用PyPlot作为后端进行绘图。 PyPlot需要在系统上安装Python和matplotlib。

我的Ubuntu装有Python(2和3)。我使用此命令sudo apt-get install python3-matplotlib安装了matplotlib。我检查了matplotlib版本,它是Matplotlib 1.5.1。但是每当我尝试使用PyPlot作为后端julia> pyplot()进行绘图时,

朱莉娅的输出是:警告:您正在使用Matplotlib 1.5.1,它已不再受到Plots社区的正式支持。为了确保顺利进行Plots.jl集成,请将您的Matplotlib库更新到> = 2.0.0的版本

因此,我尝试使用pip升级matplotlib,它说我的matplotlib版本是最新的。从pip命令sudo pip install --upgrade matplotlib的输出为:

目录" /home/yousuf/.cache/pip/http"或其父目录不属于当前用户,并且缓存已禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,则可能需要sudo的-H标志。
目录'/home/yousuf/.cache/pip'或它的父目录不属于当前用户,并且缓存轮已被禁用。检查该目录的权限和所有者。如果使用sudo执行pip,则可能需要sudo的-H标志。
需求已经是最新的:/usr/local/lib/python2.7/dist-packages中的matplotlib
要求已经是最新的:/usr/local/lib/python2.7/dist-packages中的numpy> = 1.7.1(来自matplotlib)
最新要求:/usr/local/lib/python2.7/dist-packages中的六个> = 1.10(来自matplotlib)
要求已经是最新的:/usr/local/lib/python2.7/dist-packages中的python-dateutil> = 2.1(来自matplotlib)
需求已经是最新的:/usr/local/lib/python2.7/dist-packages中的backports.functools_lru_cache(来自matplotlib)
要求已经是最新的:/usr/local/lib/python2.7/dist-packages中的subprocess32(来自matplotlib)
要求已经是最新的:/usr/local/lib/python2.7/dist-packages中的pytz(来自matplotlib)
要求已经是最新的:/usr/local/lib/python2.7/dist-packages中的cycler> = 0.10(来自matplotlib)
需求已经是最新的了:/usr/local/lib/python2.7/dist-packages中的pyparsing!= 2.0.4,!= 2.1.2,!= 2.1.6,> = 2.0.1(来自matplotlib )

从此输出看来,pip尝试升级适用于Python2的matplotlib,而1.5.1是其最新版本。但是Julia和PyPlot在我设置使用Python3时就使用它。


如果使用apt-get安装matplotlib,则不应干扰已安装的版本。我的意思是您不应该sudo pip3 install --upgrade matplotlib,因为稍后您sudo apt-get dist-upgrade可能会产生其他副作用。

您最好使用pip3 install --user --upgrade matplotlib将软件包正确保存在本地/home//.local/{bin,lib,etc,share}文件夹中。这样,您的python发行版将使用已安装的最新软件包,并且以后的软件包管理器也不会遇到任何麻烦。

编辑。 sudo apt-get update不会更新任何软件包。它只是更新了软件包管理器的缓存,即由Ubuntu获取所提供软件包的最新版本信息。 sudo apt-get dist-upgrade将安装所有更新。并且此命令可能会产生诸如故障和/或替换您的sudo pip3 install --upgrade matplotlib安装版本matplotlib的副作用。通常,在系统级别安装软件包时,最好让软件包管理器执行其工作。


我通过使用pip3找到了解决方案。
在Ubuntu上安装pip3:

1
sudo apt install python3-pip

现在使用pip3升级适用于Python 3.x.x的matplotlib:

1
2
3
sudo pip3 install --upgrade matplotlib

sudo apt-get update

你已准备好出发。


首先,使用以下命令卸载旧版本:

1
pip uninstall matplotlib

然后,使用以下命令安装最新版本:

1
pip install matplotlib

Matplotlib将更新为最新版本。您可以使用以下方法进行检查:

1
pip list