@interact
def spectrum(alpha = slider(range(0,512), default = 100),
beta = slider(range(0,512), default = 200),
gamma = slider(np.linspace(0,5,512).tolist(), default = 2.5)):
X = np.linspace(0,2 * np.pi,1024)
Y = (np.sin(alpha * X) + np.cos(beta * X)) * exp(-gamma * X)
pl.close()
pl.title('Signal')
pl.plot(X,Y)
pl.savefig('0_signal.png')
pl.close()
pl.title('Spectrum')
pl.plot(X * 512 / np.pi , abs(np.fft.fft(Y)))
pl.savefig('1_spectrum.png')
|
|
Click to the left again to hide and once more to show the dynamic interactive window
|