1
我只是要解決並繪製與matplotlib非線性方程,但有一個錯誤說:類型錯誤:繪圖陣列包括元組
TypeError: zip argument #1 must support iteration
你能幫我解決它...
import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import fsolve
r = np.arange(-100, 100, step=0.01, dtype=float)
def equation(p,r0):
x = p
r = r0
return (r * x + np.power(x,3)- np.power(x,5))
temp = []
for i in r:
x = fsolve(equation, 0, args=(i,))
temp.extend((i,x))
my_array = np.array(temp)
#print(my_array)
x, y = zip(*my_array)
plt.plot(x,y)
你需要使用'的append'代替'extend'創建一個二維數組。但是你可能有另一個bug,因爲你所有的'x'值都是'0' ...最後請注意,對於相同的結果,你可以使用換位而不是'zip':'x,y = my_array.T' – Julien
@朱利安:謝謝。我已經應用了你所說的替換。錯誤已解決,但程序不會返回任何內容! –
你期待它返回什麼? – Julien