我的函数scipy.interp2d有问题。这个例子非常简单:
import matplotlib.pyplot as plt
from scipy.interpolate import interp2d
import numpy as np
n=60 #Critical parameter
x = np.linspace(-10,10,n)
X,Y = np.meshgrid(x,x)
r = X**2+Y**2
plt.imshow(r)
plt.show()
f = interp2d(x,x,r)
new_x = np.linspace(-10,10,10)
plt.imshow(f(new_x,new_x))
plt.show()
如果n = 2,...,59,一切都很好,但是当n = 60时,会出现分段错误。这是一个scipy bug?
另一方面,我注意到当函数的值很高而域很小时,这个函数有很大的问题。我相信这个例程的实现存在一些内部问题。
任何提示?
Scipy版本:0.11.0
答案 0 :(得分:0)
pip uninstall numpy
pip uninstall scipy
pip install numpy --no-cache-dir
pip install scipy --no-cache-dir
这对我有用