How to Measuring Peak Widths

49 visualizzazioni (ultimi 30 giorni)
Aidan Fenix
Aidan Fenix il 31 Mar 2020
Commentato: Dale il 19 Ago 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.

Risposta accettata

Akira Agata
Akira Agata il 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 Commenti
Aidan Fenix
Aidan Fenix il 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 il 19 Ago 2021
Hi Aidan. Have you already finished in finding the peak width at 90%? Please teach me how.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Microscopy in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by