当我运行这段代码时:
from scipy.optimize import minimize
import numpy as np
import matplotlib.pyplot as plt
import scipy.special as spl
def minf(x):
return x[0]**2 + (x[1]-1.)**2
sol = minimize(minf, [1,2])
x = np.linspace(0,10,5000)
plt.plot(x, spl.jv(3,x), '-', sol.x, -sol.fun, 'o')我得到了一个错误: ValueError: x和y必须具有相同的第一维
如何正确指定情节语句?
我的目标是绘制一个输入和功能价值的景观。在这种情况下,一个二维的输入集。我想知道如何正确地使用linspace、bessel函数和绘图来实现这一点。
我预计会有这样的情节,并标出了最佳点:
发布于 2014-04-27 04:44:50
minimize的输出有些地方不太正确。现在还不清楚你想用它做什么。看看sol的输出,这是如何绘制的?
print sol.x, sol.fun
> [ -7.45132580e-09 9.99999993e-01] 1.1104451202e-16 然而,绘制Bessel函数很简单:
x = np.linspace(0,10,500)
y = spl.jv(3,x)
plt.plot(x, y, '-')
plt.show()

https://stackoverflow.com/questions/23319367
复制相似问题