How to Measuring Peak Widths

50 vues (au cours des 30 derniers jours)
Aidan Fenix
Aidan Fenix le 31 Mar 2020
Commenté : Dale le 19 Août 2021
Hi,
New to Matlab and thought I'd try measuring peak width from Calcium transits in beating cardiomyocytes. I've succedded in finding peak heights and making a graph which displays the peak widths (see attached figure)
This may sound simple, but how can I generate a numerical integer, or table which provides the widths of each peak. Ideally, I would use this to find the peaks (i.e., intensity), and widths (i.e., duration) of calcium transits in multiple cell lines. A bonus would be to measure the time at 90% return to baseline.
Thanks for the help.

Réponse acceptée

Akira Agata
Akira Agata le 31 Mar 2020
I believe findpeaks function can do that task. The following is an example:
% Load sample data
load sunsplot.dat;
% Define x and y
x = sunspot(:,1);
y = sunspot(:,2);
% Apply findpeaks function and obtain Peaks, Locations, and Width
[pk,loc,w] = findpeaks(y,x,'MinPeakProminence',20);
% Arrange them as a table
T = table(loc,pk,w,'VariableNames',{'Location','PeakHeight','Width'});
>> T
T =
26×3 table
Location PeakHeight Width
________ __________ ______
1705 58 2.2599
1717 63 3.6818
1727 122 3.747
1738 111 4.7879
... ... ...
  2 commentaires
Aidan Fenix
Aidan Fenix le 31 Mar 2020
Hi Akira,
This is great, thank you for the response. Would you have a suggestion on finding the peak width (i.e., time) at 90% recovery to baseline (with respect to each individual peak)?
Aidan
Dale
Dale le 19 Août 2021
Hi Aidan. Have you already finished in finding the peak width at 90%? Please teach me how.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Microscopy dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by