Vectors must be the same length

N1=64;
Y1=fft(y,N1);
x= (0:29);
subplot(3,1,2)
plot(x,abs(Y1))
xlabel('Frequency (Hz)');
ylabel('Amplitude');
%HOW TO MAKE IT SAME LENGTH?(LINE5)

 Accepted Answer

The number of elements in ‘Y1’ in the plot need to be the same as the number in ‘x’ so one way would be to re-define ‘x’ to be the desired length with respect to ‘Y1’ and another would be:
plot(x,abs(Y1(1:numel(x))))
Use the approach that gives the desired result.
.

5 Comments

% I dun understand...if i add nume1.....the MATLAB won't recognize it
so how to make Y1 same as x?
It is not necessary toi make the entire vector the same size, only the range desired in the plot. That is what the code I posted does.
To make ‘x’ the same size as ‘Y1’ create it as:
x = linspace(0, numel(Y1), numel(Y1));
The length of ‘Y1’ is fixed by ‘N’ and since that governs everythin else, it creates another option:
x = 0:N-1;
Choose the one that gives the desired result.
.
ok tq for ur guide
As always, my pleasure!
.

Sign in to comment.

More Answers (0)

Products

Tags

Asked:

Mya
on 27 Nov 2021

Commented:

on 27 Nov 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!