我在Ubuntu 16.04.4 LTS上。目前正在学习朱莉娅Julia使用PyPlot作为后端进行绘图。 PyPlot需要在系统上安装Python和matplotlib。
我的Ubuntu安装了Python(2& 3)。我使用此命令sudo apt-get install python3-matplotlib
安装了matplotlib。我检查了matplotlib版本,它是Matplotlib 1.5.1。但是,当我尝试使用PyPlot作为后端julia> pyplot()
进行绘图时,
Julia的输出是:警告:您正在使用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) 要求已经是最新的:pusarsing!= 2.0.4,!= 2.1.2,!= 2.1.6,> = 2.0.1 in /usr/local/lib/python2.7/dist-packages(来自matplotlib)
看来,从这个输出中,pip试图为Python2升级matplotlib,1.5.1是它的最新版本。但Julia和PyPlot使用Python3设置使用它。
答案 0 :(得分:1)
我使用pip3找到了解决方案。 在Ubuntu上安装pip3:
a= {
'status': 'success',
'data': {
'last_price': 1160.15,
'volume': 2007611,
'sell_quantity': 368654,
'open_interest': 0,
'last_quantity': 3,
'change': -12.45,
'ohlc': {
'high': 1169.6,
'close': 1172.6,
'open': 1169.6,
'low': 1156.05
},
'last_time': '2018-03-01 12:43:16',
'change_percent': -1.06,
'depth': {
'sell': [
{
'price': 1160.15,
'orders': 2,
'quantity': 2
},
{
'price': 1160.2,
'orders': 1,
'quantity': 1
},
{
'price': 1160.25,
'orders': 1,
'quantity': 1
},
{
'price': 1160.6,
'orders': 1,
'quantity': 10
},
{
'price': 1160.65,
'orders': 1,
'quantity': 200
}
],
'buy': [
{
'price': 1160,
'orders': 8,
'quantity': 352
},
{
'price': 1159.9,
'orders': 1,
'quantity': 1
},
{
'price': 1159.85,
'orders': 3,
'quantity': 5
},
{
'price': 1159.8,
'orders': 2,
'quantity': 335
},
{
'price': 1159.75,
'orders': 3,
'quantity': 644
}
]
},
'buy_quantity': 255199
}
}
b=a["data"]["last_price"]
现在使用pip3:
升级Python 3.x.x的matplotlibsudo apt install python3-pip
你很高兴。
答案 1 :(得分:1)
如果您使用matplotlib
安装apt-get
,则不会干扰已安装的版本。我的意思是你不应该sudo pip3 install --upgrade matplotlib
,因为这个可能在你sudo apt-get dist-upgrade
之后会有其他副作用。
您最好使用pip3 install --user --upgrade matplotlib
将软件包保存在本地/home/<user>/.local/{bin,lib,etc,share}
文件夹中。这样,您的python发行版将使用安装的最新软件包,您的软件包管理器以后也不会有任何麻烦。
编辑。 sudo apt-get update
不更新任何软件包。它只是更新包管理器的缓存即,通过Ubuntu获取所提供包的最新版本信息。 sudo apt-get dist-upgrade
将安装所有更新。此命令可能有副作用,例如失败和/或替换sudo pip3 install --upgrade matplotlib
已安装的matplotlib
版本。通常,在系统级别安装软件包时,最好让软件包管理器完成其工作。
答案 2 :(得分:0)
首先,使用以下命令卸载旧版本:
pip uninstall matplotlib
然后,使用以下命令安装最新版本:
pip install matplotlib
Matplotlib将更新为最新版本。您可以使用以下方法进行检查:
pip list