How can I put the values of the y-axis in a vector and find the maximum?

This is my MATLAB code:
data=csvread("abc.CSV");
[H, f]=make_fft(data(:,2),data(:,1)); %my function
figure
stem(f,H)
set(gca,'xscale','log')
How can I see values of the plot in a vector? I should find the first and second maximum along the y axis

2 件のコメント

Enrico Gambini
Enrico Gambini 2022 年 2 月 16 日
Hello.
I did not fully understand your question. The values of the y-axis are stored inside vector "H", you mean that you want to see a better scale in the y-axis?
Lorenza Curcio
Lorenza Curcio 2022 年 2 月 16 日
if I look for the maximum of H I get the maximum value, but what if I want the second largest value?

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

 採用された回答

Enrico Gambini
Enrico Gambini 2022 年 2 月 16 日
You mean this?
H_sorted=sort(H); %sort vector "H" in ascending order
idx=find(H==H_sorted(end-1)); %find the index of the second maximum value in vector "H"
2nd_max_value=H(idx); %this is the second maximum value of vector "H"

2 件のコメント

Lorenza Curcio
Lorenza Curcio 2022 年 2 月 17 日
yes, ty
and how can I display the values ​​of the x axis corresponding to those of the y axis? I mean the full list and not just the maximum
because I want to find which value of the x axis corresponds to the second maximum of the y axis
If you want to find the x-axis value of the second maximum y value you can Just:
x_2ndmax=f(idx)

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

その他の回答 (0 件)

カテゴリ

Community Treasure Hunt

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

Start Hunting!

Translated by