fitting envelope peak points
28 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Ancalagon8
il 22 Mag 2020
Commentato: Image Analyst
il 19 Giu 2020
I am facing some problems trying to create a fitting curve that will pass through maximum peaks. I tried findpeaks
findpeaks(Sig)
hold all
plot(Sig,'k')
as well as envelope
[up, lo] = envelope(Sig,'peak');
plot(Sig, 'o-k');
hold on
plot(up,'r');
plot(lo,'b');
legend ('bb','up','down')
grid
How can i create a fitting curve which will pass through max peak points? Will a solution be to export peaks into a new array, plot them and then create a fitting curve or there is another way?
Thanks in advance!
0 Commenti
Risposta accettata
Image Analyst
il 22 Mag 2020
Just try interp1() or spline(). Pass in your peak points and then the x values of the whole array, something like
[peakValues, indexes] = findpeaks(Sig);
yOut = spline(indexes, peakValues, 1:length(Sig));
plot(yOut, 'b-', 'LineWidth', 2);
grid on;
Let me know if it works. Attach your Sig data if it doesn't. Accept this answer if it does.
11 Commenti
Image Analyst
il 18 Giu 2020
Yes. Did you try to change the model? It's not hard. See attached.
Più risposte (1)
Ancalagon8
il 19 Giu 2020
Modificato: Ancalagon8
il 19 Giu 2020
1 Commento
Image Analyst
il 19 Giu 2020
Wow, that's bizarre, but we've seen it before. See this link.
It seems to be related to the OpenGL renderer.
Vedere anche
Categorie
Scopri di più su Characters and Strings in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!