我首先尝试添加谐波。但是为了添加谐波,我尝试使用循环。但它不起作用...
import numpy as np
import matplotlib.pyplot as plt
p = np.pi
m = 4/p
n = p/2
t = np.arange(-10, 10, 0.001)
#a1 = m*np.cos(n*t)
#a2 = -m/3*np.cos(3*n*t)
#a3 = m/5*np.cos(5*n*t)
#a4 = -m/7*np.cos(7*n*t)
#a5 = m/9*np.cos(9*n*t)
plt.figure(figsize = (12,6))
a=[]
for i,j in zip(range(1,21,2), range(0,20,1)):
a = ((-1)**j*m/i*np.cos(i*n*t))/2
a += a
#a = a1+a2+a3+a4+a5
plt.plot(t, a, 'r-')
plt.title('Square Signal using sine harmonics', fontdict={'fontname': 'monospace', 'fontsize': 15})
plt.ylabel('Amplitude')
plt.xlabel('Time')
plt.grid()
plt.show()