我在Matlab中有一个有噪声的周期信号,在[peak loc]=findpeaks(signal)的帮助下,我从这些信号中提取了峰值。然而,peak数组中也存在不切实际的异常值。我为peak设置了min值和最大值,因此可以得到一个更短的peak数组。现在,我想将这个较短的原始peak子集标记为原始的plot(loc,peak),这样我就会得到一个错误,因为loc保持了它的原始长度。
我的问题:
loc适应于peak,并与LOC-峰值分配相一致?- How can I alternatively plot the shortened `peak` array onto the original signal plot?
非常感谢!
发布于 2016-12-15 00:28:25
我认为您可以通过以下代码解决问题:
[peak,loc] = findpeaks(signal);
max_thr = 2;
min_thr = 1e-5;
mask = peak>min_thr&peak<max_thr;
plot(loc(mask),peak(mask))这就是你想要的吗?
https://stackoverflow.com/questions/41154412
复制相似问题