Numpy、SciPy、MatPlotLib在Python2.7.9下的安装与配置

前言:

Python安装完Numpy,SciPy和MatplotLib后,可以成为非常犀利的科研利器。网上关于这三个库的安装都写得非常不错,但是大部分人遇到的问题并不是如何安装,而是安装好后因为配置不当,在使用时总会出现import xxx error之类的错误。

一、安装Python2.7.9

推荐刚入手的朋友直接安装Python3.4,现在Numpy,SciPy和MatplotLib已经支持Python3.4了,但是不要装最新版本,因为第三方提供的库更新没有那么快。

二、安装Numpy、SciPy、MatPlotLib

下载Numpy,SciPy,MatplotLib这三个库的exe,注意,这里用的是exe,因为MatplotLib的使用需要以Numpy的支持,所以最好先装NumPy再装MatplotLib。下载地址:

需要注意注意根据自己的系统选择win32还是win64,并且注意要和Python2.7.9对应,当然如果是安装的Python3.4就要下载支持3.4的Numpy、SciPy、MatPlotLib。安装的时候会自动找到Python的安装路径,一路Next就行了。默认安装在\Python27\Lib\site-packages

三、配置Numpy,SciPy,MatplotLib

只安装这三个模块还不能实现绘图的功能,在Python的IDLE中输入:import matplotlib 会提示错误。错误原因有三个:

  • ImportError: matplotlib requires dateutil
  • ImportError: matplotlib requires pyparsing
  • No module name six

在解决这三个问题之前,我们先要安装wheel (不然无法使用pip命令安装.whl文件)。使用pip命令建议先将pip.exe的路径添加到环境变量中(安装完可以再将pip在环境变量中的路径删除),pip安装在\Python27\Scripts文件夹下。如果没有配置环境变量,需要cd到\Python27\Scripts文件夹下执行下面那条命令。这时pip会自动在网络上下载安装wheel:

python pip.exe install wheel

安装完wheel之后我们解决那三个问题:

打开这个链接:http://www.lfd.uci.edu/~gohlke/pythonlibs/#six  根据自己的系统和Python版本下载:(可以在网页上按ctrl + F,输入six、dateutil、pyparsing查找位置)

  • six-1.10.0-py2.py3-none-any.whl
  • python_dateutil-2.4.2-py2.py3-none-any.whl
  • pyparsing-2.0.3-py2-none-any.whl

然后将这三个.whl文件拷贝到\Python27\Scripts文件夹下,不拷贝的话需要在安装时输入文件所在的绝对路径,建议先拷贝过来,等安装完成后再删除。在cmd下执行:

python pip.exe install six-1.10.0-py2.py3-none-any.whl
python pip.exe install python_dateutil-2.4.2-py2.py3-none-any.whl
python pip.exe install pyparsing-2.0.3-py2-none-any.whl

这里我们就配置好Numpy,SciPy,MatplotLib,附一段测试代码:

 import numpy as np
import matplotlib.pyplot as plt x = np.linspace(0, 10, 1000)
y = np.sin(x)
z = np.cos(x**2) plt.figure(figsize=(8,4))
plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)
plt.plot(x,z,"b--",label="$cos(x^2)$")
plt.xlabel("Time(s)")
plt.ylabel("Volt")
plt.title("PyPlot First Example")
plt.ylim(-1.2,1.2)
plt.legend()
plt.show()

Numpy、SciPy、MatPlotLib在Python2.7.9下的安装与配置

上一篇:linux expect命令使用入门


下一篇:(转载)android:android.content.res.Resources$NotFoundException: String resource ID #..