%MatLAB Fourier transform example from Help File %Modified to show both graphs in one plot. %Steven Sahyun 141024 clear; clf(); Fs = 1000; % Sampling frequency T = 1/Fs; % Sample time L = 10000; % Length of signal t = (0:L-1)*T; % Time vector % Sum of a 50 Hz sinusoid and a 120 Hz sinusoid x = 0.7*sin(2*pi*60*t) + 2*sin(2*pi*120*t) + sin(2*pi*300*t); noiseamp = 2; %Amplitude of noise term y = x + noiseamp*randn(size(t)); % Sinusoids plus noise %figure %create new plot window subplot(2,1,1) %first subplot - this directs to a plot window with two plots (rows, columns, 1st plot) plot(Fs*t(1:50),y(1:50)) title('Signal Corrupted with Zero-Mean Random Noise') xlabel('time (milliseconds)') NFFT = 2^nextpow2(L); % Next power of 2 from length of y Y = fft(y,NFFT)/L; f = Fs/2*linspace(0,1,NFFT/2+1); % Plot single-sided amplitude spectrum. subplot(2,1,2)%second subplot - this directs to the plot window with two plots (rows, columns, 2nd plot) plot(f,2*abs(Y(1:NFFT/2+1))) title('Single-Sided Amplitude Spectrum of y(t)') xlabel('Frequency (Hz)') ylabel('|Y(f)|')