Skip to content
Snippets Groups Projects
Commit c7e40e27 authored by rahix's avatar rahix
Browse files

Merge 'Super basic ECG log plotter'

See merge request !333
parents 8f488267 22dd59f6
No related branches found
No related tags found
1 merge request!333feat(ecg): Super basic ecg log plotter
Pipeline #4188 passed
# vim: set ts=4 sw=4 tw=0 et pm=:
import numpy
import sys
import matplotlib.pyplot as plt
def read(file_name):
signal = numpy.fromfile(file_name, dtype=numpy.int16)
return signal
signal = read(sys.argv[1])
factor = -1
count = 5
offset = 0
signal = signal[offset * 128 :]
count = min(min(len(signal) / 1280 + 1, 10), count)
font = {"family": "serif", "color": "darkred", "weight": "normal", "size": 16}
title = False
for i in range(count):
plt.subplot(count, 1, i + 1)
sub_signal = signal[i * 1280 : (i + 1) * 1280] * factor
# pad with 0 as needed.
# TODO: find a better solution to visialize this
sub_signal = numpy.pad(sub_signal, (0, 1280 - len(sub_signal)), "constant")
time_scale = (
numpy.array(range(i * 1280, i * 1280 + len(sub_signal))) / 128.0 + offset
)
plt.plot(time_scale, sub_signal, "-")
if not title:
plt.title("File: %s" % sys.argv[1].split("/")[-1], fontdict=font)
title = True
plt.xlabel("time (s)", fontdict=font)
plt.show()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment