绘制一个返回浮点数组的自定义函数



我在python3中有一个自定义函数,如下所示:

myFunction(A, x)
"""
Args:
A (list)
x (float)
Returns:
Y: numpy array of floats [y1,y2,...,y(len(A))]
"""
return Y

我想做的是为某个选定的常量列表a绘制一张图,其中X轴是输入参数X(范围在一些值之间,比如0,10(,Y轴是输出数组中的浮点值(因此多条曲线,颜色不同(我想做这样的事将matplotlib.pyplot导入为plt

A = [5,10,15,20]
x = numpy.linspace(0,10,1000) #1000 numbers between 0 and 10
plt.plot(x,myFunction(A, x))

但我收到错误

TypeError: only size-1 arrays can be converted to Python scalars

感谢

看起来我最终找到了

x = np.linspace(0,100,1001) 
resultSet = [] #initialize list to store results

for i in range(0, len(x)): 
resultSet.append(list(myFunction(A, x)))
resCount = len(resultSet[0]) 
labelList = [] #initialize list for legend names
for i in range(0,resCount):
labelList.append("Line "+str(i+1))
lineObjects = plt.plot(list(x),resultSet)
plt.xlabel("x label")
plt.ylabel("y label")
plt.legend(lineObjects,labelList)
plt.show()

最新更新