Trying to plot a sine wave, getting a straight line.
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I need to create a time series using x(n)=sin(2pi/N)*n where N=256 and plot the amplitude. I keep getting a straight line instead of a sine wave. Any pointers?
%Create time series x(n)
N=256;
x=zeros(N,1); %allocate space
for n=1:N;
x(n)=sin((2*pi)/N)*n;
end
%Plot x(n)
figure(1)
n=0:255;
plot(n,x(1:N))
xlim([0 255])
ylim([-120 120])
xlabel('n')
ylabel('Amplitude')
title('x(n)'
0 commentaires
Réponse acceptée
Roger Stafford
le 9 Fév 2018
You have placed your ’n’ variable outside the parentheses for the sine function. That would make it a straight line. It should be this to get a sine curve:
x(n)=sin(2*pi/N*n);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!