How can i know the abscissa of the maximum of a curve ?
2 次查看(过去 30 天)
显示 更早的评论
Hi
I have a curve Amplitude=f(frequency) and i want to know the abscissa of the maximum.
Please help me.
2 个评论
Adam
2016-10-20
Isn't the abscissa just the y-axis value of your function - i.e. Amplitude?
So just run your function and call
max( Amplitiude )
on the result.
John D'Errico
2016-10-20
Adam - Sorry, but no. Back to grade school for this.
https://en.wikipedia.org/wiki/Abscissa
The y axis is the ordinate, not the abscissa.
回答(1 个)
John D'Errico
2016-10-20
So you have a function of a single variable, and you need to know the location of the min.
If you have the function itself, then use fminbnd.
If you have only data points, thus (x,y) pairs, then use min. It returns the index of the minimum value(look at the second output argument), then use that index on the vector of x values.
If you want to find a minimum on data points, but you need an interpolated minimum, then you can use fminbnd on a spline fit. Don't expect it to be very good though.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!