Trying to plot a sine wave, getting a straight line.
5 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Roger Stafford
2018-2-9
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);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!