我使用下面的手动方法来绘制谐波的总和。下面的方法是有效的好吧,拜托参考图片下面。什么时候在for循环中实现了相同的东西,它的工作方式不是想要的。那个for循环意味着要考虑n个谐波数价值观。可以你能帮我吗?在
import numpy as np
import matplotlib.pyplot as plt
# omega =2*pi
x=np.linspace(0,2*np.pi,2000)
y1=np.sin(1*2*np.pi*x)/1
y2=np.sin(3*2*np.pi*x)/3
y3=np.sin(5*2*np.pi*x)/5
y4=np.sin(7*2*np.pi*x)/7
y5=np.sin(9*2*np.pi*x)/9
Y=y1+y2+y3+y4+y5
plt.plot(x,Y)
plt.grid()
plt.show()
#Implementation in for loop is not working
def Harmonic(i):
y = []
for n in range(0,i):
y=np.sin((2*n+1)*(2*np.pi)*(x))/(2*n+1)
y += y
plt.plot(x,y)
plt.grid()
plt.show()
你的意思是这样吗?在
或者,如果您想使用“绘制图”功能:
^{pr2}$如果目标是“实时”查看增加谐波数量的影响,您应该使用
FuncAnimation
下面是一个简单重构的示例:
我已经给你的工作方法打了第一个_解决方案,第二个解决方案是针对你的有缺陷的方法。希望有帮助
相关问题 更多 >
编程相关推荐