Trying to plot a sine wave, getting a straight line.
조회 수: 12 (최근 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개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!