Plot ECG based on heart rate

25 views (last 30 days)
Christopher Houk
Christopher Houk on 27 Oct 2017
Hi all,
I'm working on a function that returns a plot based on the heart rate of the user. Example: if the user's heart rate is 60 BPM, the plot will display 10 beats in 10 seconds or 20 beats in 10 seconds if it's 120BPM. I have an ecg.m function I downloaded from here that I'm using to create and replicate an ECG pattern. I'm having problems getting the plot to display in seconds rather than samples. I'm also hoping to do a live ECG view using dsp.timescope. If one or both of these could be solved that would great!
Best, Chris
  4 Comments
Christoph F.
Christoph F. on 2 Nov 2017
Edited: Christoph F. on 2 Nov 2017
ecg() is a MatLAB function. I think it is part of the signal processing toolbox.
Maitreyee Mordekar
Maitreyee Mordekar on 6 Nov 2017
Hi Christoph F.,
I meant to ask if he is referring to a MATLAB shipping example or the following file exchange submission:
Anyways, thanks for answering his query :)
Cheers, Maitreyee

Sign in to comment.

Answers (1)

Christoph F.
Christoph F. on 2 Nov 2017
Edited: Christoph F. on 2 Nov 2017
> I'm having problems getting the plot to display in seconds rather than samples.
It looks like your t vector is in samples instead of seconds.
Fs = heartRate/60;
x = ecg(2700);
...
t = linspace(0, 15999, 16000)/Fs;
The actual sampling rate is 2700*Fs, not Fs. Try
t = linspace(0, 15999, 16000)/(2700*Fs);
Side question: How is the "heart rate" of the user determined for this function? Is it a given value used for generating ECG test signals?

Categories

Find more on Signal Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!