我有一个包含五个主要峰值的图表。我想找到第一个峰值(最右边的峰值)的位置和值。我有 100 多个不同的图,并且峰值在各个图中的大小不断增大和缩小,并且需要使用 for 循环。我只是坚持使用 Matlab 代码确定大量有效数字的 x 和 y 值。
这是众多情节之一:
最佳答案
如果您确定总会有 5 个峰值,我认为 FileExchange 函数 extrema
将非常有帮助,请参阅 here .
这将以降序返回最大值(如果需要,还可以返回最小值),因此输出 zmax
和 imax
的第一个元素分别是最大值及其索引,它们的第二个元素是第二个最大值及其索引等等。
如果您需要的峰值始终是五个峰值中最小的一个,则您只需要 zmax(5)
和 imax(5)
来确定第 5 个峰值最大的最大值。
关于matlab - 确定峰值的位置和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18578642/