您的位置:首页 > 编程语言 > Python开发

Python中Numpy、SciPy、MatPlotLib安装与配置

2016-08-22 13:53 661 查看

Python中Numpy、SciPy、MatPlotLib安装与配置

Python安装完Numpy,SciPy和MatplotLib后,可以成为非常犀利的科研利器。网上关于这三个库的安装都写得非常不错,但是大部分人遇到的问题并不是如何安装,而是安装好后因为配置不当,在使用时总会出现import xxx error之类的错误。我也是自己摸索了很久才发现如何去正确配置的。下面就详细说下安装和配置的过程。

1.安装Python,这里选择2.7还是3.4都行,不过推荐使用2.7,毕竟现在的教程大部分还是基于2.7的,3.4跟2.7的语法还是略有不同,为了避免语法错误的麻烦,还是推荐大家使用2.7。下载地址为:https://www.python.org/downloads/

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

•NumPy: http://sourceforge.net/projects/numpy/files/NumPy/1.9.2/

•SciPy: http://sourceforge.net/projects/scipy/files/scipy/0.15.1/

•MatPlotLib: http://matplotlib.org/downloads.html

其中NumPy和SciPy没有32和64位的区别,MatPlotLib需要根据自己的系统选择32位和64位的。再次提醒,这三个库一定都要下载对应版本的exe。下载完成后一次安装就是了,他们会自动找到你之前安装好的Python所在的路径的,一路Next到底就行了。

3.在第2步安装完成后,可以在MatPlotLib的Examples页面(http://matplotlib.org/examples/index.html)Copy代码运行,发现一定会出错。这里出的错,大体有三个:

•Import Error: matplotlib requires dateutil

•Import Error: matplotlib requires pyparsing

•No module name six

这边我遇到的是第一种情况的错误Import Error: matplotlib requires dateutil

下面是这种情况下的解决方法:

1、安装easy_install

在文件夹C:\Python27下新建脚本:

from urllib import urlopen
data = urlopen('http://peak.telecommunity.com/dist/ez_setup.py')
with open('ez_setup.py', 'wb') as f:
f.write(data.read())


运行脚本可以将easy_install下载下来。



2、安装pip

切换工作目录后使用easy_install来安装pip



3、下载dateutil和pyparsing

下载链接

声明:这个网站上有丰富的资源可以收藏(文件是以.whl为后缀名的)

4、把pip和easy_install加入到环境变量中

在系统环境变量path中加入C:\Python27\Scripts目录名,这样才可以使用pip来安装.whl文件

5、使用pip来安装dateutil和pyparsing

功能测试:

代码如下:

from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm

fig = plt.figure()
ax = fig.gca(projection='3d')
X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=0.3)
cset = ax.contour(X, Y, Z, zdir='z', offset=-100, cmap=cm.coolwarm)
cset = ax.contour(X, Y, Z, zdir='x', offset=-40, cmap=cm.coolwarm)
cset = ax.contour(X, Y, Z, zdir='y', offset=40, cmap=cm.coolwarm)

ax.set_xlabel('X')
ax.set_xlim(-40, 40)
ax.set_ylabel('Y')
ax.set_ylim(-40, 40)
ax.set_zlabel('Z')
ax.set_zlim(-100, 100)

plt.show()


至此,大功告成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python