刚开始装这个库的时候,先是使用pip 装的
pip install numpy#其实这个缺少mkl模块,所以错误的
pip install scipy#容易失败
pip install matplotlib 然后 在装scipy的时候便无法正常使用,于是在Python扩展包的非官方Windows二进制文件这个网站找到了各种二进制文件,总这里开始我们要注意啦,恩,先去找numpy+mkl这个
然后pip install wheel#安装器
pip install #你文件的全名加上后缀 ps(先要进入你现在文件的地方)
然后下载scipy的,最后下载matplotlib的文件,万事俱备了。我们一个接一个安装,在安装matplotlib模块的的时候系统会自动检测剩下缺少的依赖模块,比如什么six,dateutil, pytz, pyparsing等。这个时候我们就可以尝试引用各种模块了。
这样我们就差不多成功啦,恩,但是问题总用出现在成功之前。
我在引用scipy的子模块的时候就是scipy.interpolate的时候 爆出了这个错误 ImportError: DLL load failed: 找不到指定的模块
就这货让我想了两天,前前后后弄了十几个小时,还是没成功,然后 我打开了虚拟机,在里面安装了一遍,竟然能用!竟然能用!竟然能用!
突然想到,我的电脑系统是64位的,但是我之前安装的是32位的python2.7,恩很尴尬,也很气,马上去官网Welcome to Python.org,下载python 2.7 64位的,然后重复前面的工作,恩成功.
下面分享下拟合曲线的代码
# -*- coding: utf-8-*-
import numpy as np
import matplotlib.pyplot as plt
from scipy import interpolate
import numpy as np
import matplotlib.pyplot as plt
from scipy import interpolate
def draw(x,y,xconul,xconll):
xinterp1 =np.linspace(xconul,xconll, 100)
yinterp1 = interpolate.UnivariateSpline(x,y)(xinterp1)
plt.plot(x,y,'.c')
plt.plot(xinterp1, yinterp1, 'c', linewidth=1)
plt.show()
x= np.array([0.077,0.062,0.053,0.047,0.043,0.035,0.029],dtype=float)
y = np.array([121,115,110,105,100,90,80],dtype=float)
xconul = 0.028
xconll = 0.08
plt.title(r'$U_0 = f(I_0)$')
plt.xlabel(r'$I_0/A$')
plt.ylabel(r'$U_0/V$')
draw(x,y,xconul,xconll)
图例如下
经历这次我相信其他模块难不倒我啦。很气,想不明白为毛子模块不能用和系统的关系
——未完待续