类型错误:绘制包含元组的数组

时间:2017-04-06 04:02:11

标签: python matplotlib

我要解决并用matplotlib绘制一个非线性方程,但是有一个错误说:

  

TypeError:zip参数#1必须支持迭代

你能帮我解决一下吗?...

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)

1 个答案:

答案 0 :(得分:1)

正如@Julien所说,您必须使用from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Firefox() driver.get("https://example.com") inputElement = driver.find_element_by_id("searchterm") inputElement.send_keys('pets') inputElement.send_keys(Keys.ENTER) driver.find_element_by_id("mp-pusher").click() inputElement.submit() 代替append。此外,我猜您无法看到结果,因为您的代码段中没有extend。您需要在plt.show()之后立即添加。然后,输出将是:

enter image description here

您最好将初始猜测更改为其他内容,因为plt.plot(x,y)是所有0等式的答案。例如,以下是r的结果:

enter image description here