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代码运行,发现一定会出错。这里出的错,大体有三个:
- ImportError: matplotlib requires dateutil
 - ImportError: matplotlib requires pyparsing
 - No module name six
 
4.解决No module name six问题,解决办法很简单。把你的安装路径:Python27/Lib/site-packages/scipy/lib中的six.py,six.pyc,six.pyo三个文件拷贝到 你的安装路径:Python27/Lib/site-packages,这个问题就解决了。如何还不行,请记住这个地址(非常重要):http://www.lfd.uci.edu/~gohlke/pythonlibs/ 
然后下载这个文件:six‑1.9.0‑py2.py3‑none‑any.whl,下载后,利用CMD进入到该文件所在的目录(DOS命令为:cd /d XX:/XXX/six‑1.9.0‑py2.py3‑none‑any.whl 把你自己的six文件的所在路径按格式粘贴进DOS然后回车就行了),然后输入命令:pip install six-1.9.0-py2.py3-none-any.whl,等DOS命令跑完,six不存在的问题就解决了。操作图如下: 
5.解决ImportError: matplotlib requires dateutil问题,方法和第4步一样,下载python_dateutil‑2.4.2‑py2.py3‑none‑any.whl,然后pip install就可以解决该问题了。操作如下: 
6.解决ImportError: matplotlib requires pyparsing问题,还如同之前一样,下载pyparsing‑2.0.3‑py2‑none‑any.whl(选择对应的版本,这里有2和3的区别)然后利用pip install安装好就可以了。操作如下: 
到此,所有的配置就完成了,可以愉快地使用MatPlotLib进行科学画图和计算了。另外提醒一句,Python2.7和Python3.4不要共存,共存的时候安装这几个库会出现莫名其妙地错误,怎么也对不了,推荐只是用Python2.7,。最后,附带一个来自MatPlotLib的画图代码:
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中的Numpy、SciPy、MatPlotLib安装与配置的更多相关文章
- Python中GUI库PyQt5的安装和配置
		
在使用Tkinter开发GUI程序时,发现相关文档比较少,开发起来太累.经过综合比较,决定使用PyQt这个库.下面是简单的安装步骤. 1.安装 PyQt5 : pip install PyQt5 -i ...
 - Python中安装numpy,scipy,matplotlib安装方法
		
这个吧,说简单也简单,说难吧我捣鼓了两天才弄出来,真是头发都急白了.其实只要一个网址就搞定了,嘿嘿 http://www.lfd.uci.edu 这里面有你需要的任何东西,当你运行python imp ...
 - matplotlib numpy scipy 的安装
		
一:windows 端的安装 #cmd指令 python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sym ...
 - Linux入门(10)——Ubuntu16.04使用pip3和pip安装numpy,scipy,matplotlib等第三方库
		
安装Python3第三方库numpy,scipy,matplotlib: sudo apt install python3-pip pip3 install numpy pip3 install sc ...
 - 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇
		
始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...
 - Keras官方中文文档:Keras安装和配置指南(Linux)
		
关于计算机的硬件配置说明 推荐配置 如果您是高校学生或者高级研究人员,并且实验室或者个人资金充沛,建议您采用如下配置: 主板:X299型号或Z270型号 CPU: i7-6950X或i7-7700K ...
 - 在windows下python,pip,numpy,scipy,matplotlib的安装
		
系统:win7(64bit) 如果只需要安装python,执行步骤一就可以了,不用管后面.如果还需要其它的库,则只需要执行第二步,第一步可省略(因为在安装anaconda的时间,python就自动装好 ...
 - win7 64+python2.7.12安装numpy+scipy+matplotlib+scikit-learn
		
python包下载网址 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 1.已经安装python2.7.12,查看scripts里是否有pip.2.7.9版本以上 ...
 - mac安装numpy,scipy,matplotlib
		
SaintKings-Mac-mini:~ saintking$ python Python ( , ::) [GCC Compatible Apple LLVM (clang-)] on dar ...
 
随机推荐
- 页面加载完成前的loading加载效果
			
/*loading.js*/ // 加载HTML图 var _LoadingHtml = '<div id="loadingDiv" style="position ...
 - import与from...import...的区别
			
from ... import ... 的用法和直接import的区别: 1.直接使用import时,如果需要使用到导入模块内的属性和方法,必须使用模块名.属性和模块名.方法的方式进行调用 2.使用f ...
 - js 的 一些操作。。。
			
// 对错误图片进行处理 $("img").error(function() { $(this).attr("src", "http://127.0. ...
 - 75th LeetCode Weekly Contest All Paths From Source to Target
			
Given a directed, acyclic graph of N nodes. Find all possible paths from node 0 to node N-1, and re ...
 - logback error 分开存日志
			
<?xml version="1.0" encoding="UTF-8"?> <configuration> <property ...
 - Oracle trunc函数使用
			
select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss'), to_char(trunc(sysdate), 'yyyy-mm-dd hh24:mi:ss') f ...
 - Django-4 模板层
			
你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python代码之中. def current_datetime(request): now = datet ...
 - Python + Selenium 练习篇 - 获取页面所有邮箱
			
代码如下: # coding=utf-8import re #python中利用正则,需要导入re模块from selenium import webdriverdriver = webdriv ...
 - 快速创建jquery插件
			
介绍 什么是插件? 插件我们见得很多了,比如浏览器上我们会安装一些去除广告的插件.美化页面的插件等等. 在前端,我们也常常写一些jquery插件来使用.来添加我们常常写的一些功能,方便使用. 为什么要 ...
 - 修改linux文件权限命令
			
修改linux文件权限命令:chmod Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作. 文件或目录的访问权限分为只读,只写和可执行三种.以文 ...