MATLAB: One value not being displayed

Hello. I was wondering why one of my values isn't being displayed?
The value of '1' in the first graph (Magnitude Coefficients).
n_1 = 3:4:20;
n_2 = 0:2:20;
n_3 = 1:4:20;
s1 = n_3;
s2 = n_2==0;
s3 = n_1;
f(s1) = 4./(pi*s1).*sin(s1*pi/2);
f(s2) = 0;
f(s3) = -4./(pi*s3).*sin(s3*pi/2);
theta(n_3) = 0;
theta(n_1) = -pi;
subplot (2,1,1); stem(n_3, f(s1), 'p')
hold on
subplot (2,1,1); stem(n_1, f(s3), 'b'); ylabel('c_n'); xlabel('n'); title ('Magnitude Coefficients')
subplot (2,1,2); stem (n_3, theta(n_3), 'm')
hold on
subplot (2,1,2) ; stem (n_1, theta(n_1), 'g'); ylabel('\theta(n) [rad]'); xlabel('n') ; title ('Phase Coefficients')
Please and thank you.

Best Answer

  • You've overwritten f(1) when you set f(s2)=0; Replace your first stem line with the values directly:
    stem(n_3, 4./(pi*s1).*sin(s1*pi/2), 'p')