plot(x,y(N+1,:),'k','Linewidth',1.2);
hold off
end
Cuando en la ventana de comandos ejecutamos
sumasparcialesFourier(20,6)
obtenemos las gráficas de la siguiente figura (las etiquetas del eje horizontal se han modificado después)

Se incluye a continuación todo el código, añadiendo algunas líneas de comentario:
function sumasparcialesFourier(N,inc)
% Esta función dibuja en rojo la función que vale sen(t) para t entre 0 y pi/4 y vale
% cero entre -pi/4 y 0 y que se repite periódicamente
% con periodo T=pi/2. Dibuja después las N+1 primeras sumas
% parciales del desarrollo de Fourier de esta función
% periódica, si inc=1; si no, va saltando ese incremento.
% La última dibuja remarcada en negro.
p=pi/4;
xf=[-p 0 linspace(0,p,20)]; f=[0 0 sin(xf(3:end))];
plot([xf-2*p, xf, xf+2*p],[ f f f],'r','Linewidth',1.2)
axis equal; grid on; hold on
x=linspace(-3*p,3*p);
c0=(2-sqrt(2))/pi;
y=c0*ones(N+1,length(x));
for k=1:N
ck=((-1)^k*(1+4*k*i)*sqrt(2)-2)/((16*k^2-1)*pi);
tk=2*real(ck)*cos(4*k*x)-2*imag(ck)*sin(4*k*x);
y(k+1,:)=y(k,:)+tk;
end
plot(x,y(2:inc:N,:));
% Para dibujar remarcada la última suma parcial
plot(x,y(N+1,:),'k','Linewidth',1.2);
hold off
end