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

4 Ansichten (letzte 30 Tage)
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 Kommentare
Enrico Gambini
Enrico Gambini am 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
Lorenza Curcio am 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?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Enrico Gambini
Enrico Gambini am 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"
  2 Kommentare
Lorenza Curcio
Lorenza Curcio am 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
Enrico Gambini am 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)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by