MATLAB: FFT from time domain in excel

fftMATLAB

I am trying to get Frequency domain results from my Time domain analysis data regarding a floating offshore wind turbine responses.
I have learnt that I can use FFT in Matlab to perform this action. Can anybody suggest me how to do FFT and plots with excel file which has over 50000 lines of data?
I have attached one of the xlsx files that I need to FFT. Thank you.

Best Answer

There is not much to see in the plot:
D1 = readmatrix('PlatformHeave.xlsx');
t = D1(:,1); % Time Vector
Fs = 1/mean(diff(t)); % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
y = D1(:,2:end); % Signal Matrix
ym = y - mean(y); % Subtract Column Means From All Columns (Eliminates D-C Offset Effect)
L = numel(t); % Signal Lengths
FTy = fft(y)/L; % Fourier Transform (Scaled For Length)
Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
Iv = 1:numel(Fv); % Index Vector
sep = ones(numel(Fv),1) * (1:size(FTy,2)); % 'Separation Matrix' — Plots Each Record In Its Column Locatioln
Fm = ones(numel(size(FTy,2)),1) * Fv; % Frequency Matrix
figure
plot3(Fm, sep, abs(FTy(Iv,:))*2)
grid on
xlabel('Frequency (Hz)')
ylabel('Record (Column #)')
zlabel('Amplitude')
set(gca, 'ZScale','log')
.