Plot graphs using Matplotlib

Plot graphs using Matplotlib

Solution 

q2-1.py 

from math import exp, sin, pi, e

importnumpy as np

importmatplotlib.pyplot as plt

t0 = 0

f0 = 10

sigma = 10

t = np.linspace(-10,10,100)

def y(t):

return (np.exp(-((t-t0)**2)/(2*(sigma)**2))*np.sin(2*pi*f0*t))

plt.plot(t, y(t).astype(np.float))

plt.show() 

q2-2.py 

from math import exp, sin, pi, e

importnumpy as np

importmatplotlib.pyplot as plt

t = np.linspace(-10,10,1000)

def y(t, sigma, f0, t0):

return (np.exp(-((t-t0)**2)/(2*(sigma)**2))*np.sin(2*pi*f0*t))

plt.plot(t, y(t, 0.5, 2, -5).astype(np.float)) #plot1 blue

plt.plot(t, y(t, 0.5, 3, 0).astype(np.float)) #plot2 red

plt.plot(t, y(t, 0.5, 4, 5).astype(np.float)) #plot3 green

plt.xlabel(‘Time(t)’)

plt.ylabel(‘y(t)’)

plt.title(‘Three Modulated Sine Waves’)

plt.grid(True)

plt.show() 

q2-3.py 

from math import exp, sin, pi, e

importnumpy as np

importmatplotlib.pyplot as plt

fromnumpy.fft import fft

sigma = 0.5

dt = 1/1000

t = np.linspace(-10,10,1000)

y = ((np.exp(-((t+5)**2)/(2*(sigma)**2))*np.sin(2*pi*2*t)) +

(np.exp(-((t)**2)/(2*(sigma)**2))*np.sin(2*pi*3*t)) +

(np.exp(-((t-5)**2)/(2*(sigma)**2))*np.sin(2*pi*4*t)))

yfft = (fft(y)) #fft

#Amplitude Spectra

plt.plot(abs(yfft))

plt.xlabel(‘Frequency’)

plt.ylabel(‘Magnitude(Volt/sqrt(Hertz))’)

plt.title(‘FFT of Sum of Three Modulated Sine Waves(Amplitude Spectra)’)

plt.grid(True)

plt.show()

plt.plot(abs(yfft))

plt.xlabel(‘Frequency’)

plt.ylabel(‘Magnitude(Volt/sqrt(Hertz))’)

plt.title(‘Zoomed Amplitude Spectra’)

plt.grid(True)

plt.xlim(0, 100) #Zooming

plt.show()

plt.savefig(‘/home/vishal/Desktop/Amplitude Spectra.png’, transparent = False)

#Phase Spectra

plt.plot(np.angle(yfft))

plt.xlabel(‘Frequency’)

plt.ylabel(‘Phase’)

plt.title(‘FFT of Sum of Three Modulated Sine Waves(Phase Spectra)’)

plt.grid(True)

plt.show()

plt.plot(np.angle(yfft))

plt.xlabel(‘Frequency’)

plt.ylabel(‘Phase’)

plt.title(‘Zoomed Phase Spectra’)

plt.grid(True)

plt.xlim(0, 100) #Zooming

plt.show()

plt.savefig(‘/home/vishal/Desktop/Phase Spectra.png’, transparent = False)