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

4 views (last 30 days)
Lorenza Curcio on 16 Feb 2022
Commented: Enrico Gambini on 17 Feb 2022
This is my MATLAB code:
[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
Enrico Gambini on 16 Feb 2022
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 on 16 Feb 2022
if I look for the maximum of H I get the maximum value, but what if I want the second largest value?

Enrico Gambini on 16 Feb 2022
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"
Lorenza Curcio on 17 Feb 2022
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
Enrico Gambini on 17 Feb 2022
If you want to find the x-axis value of the second maximum y value you can Just:
x_2ndmax=f(idx)