How to plot fft outputs in frequency domain?

118 ビュー (過去 30 日間)
Chutiphon Moranon
Chutiphon Moranon 2020 年 7 月 3 日
コメント済み: Chutiphon Moranon 2020 年 7 月 3 日
Hi all,
I have attached the m-file for information about my question.
I have time-history acceleration data named BodyAccel_y in the workspace. I converted it to frequency domain by using fft in MATLAB.
However, as I noticed, the outputs are complex numbers.
I would like to plot the output data on Y-axis against their individual frequencies in X-axis.
I am new to this subject. I would appreciate any guidance/suggestion/instruction provided for this matter.
Thank you.

採用された回答

KSSV
KSSV 2020 年 7 月 3 日
You have to generate the frequency values based on the sampling you have and use abs of the result of fft.
  1 件のコメント
Chutiphon Moranon
Chutiphon Moranon 2020 年 7 月 3 日
Thank so much. I have followed the instructions in that link. It is really helpful.

サインインしてコメントする。

その他の回答 (1 件)

Arham jain
Arham jain 2020 年 7 月 3 日
if you want to plot the magnitude use
Y = abs(fft(BodyAccel_y));
if you want to plot phase use
Y = angle(fft(BodyAccel_y));
  1 件のコメント
Chutiphon Moranon
Chutiphon Moranon 2020 年 7 月 3 日
Thank you so much. Your reply is helpful.

サインインしてコメントする。

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by