The range of milivolt (mV) unit in PTB Diagnostic ECG Database
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 82
- Forks
- 21
- Avg merge
- 35m
- Merged PRs (30d)
- 1
Description
I am working on PTB Diagnostic ECG Database and I came out with a controversy for the signals I read. I am using Python wfdb library to read the records. I realized that the milivolt (mV) range of the signals are different if i use wfdb library or if I plot it from the website (physionet ATM). I used the first 10 seconds of the record "patient015/s0152lre" as an example and here is the plot if I use wfdb:
import wfdb
import matplotlib.pyplot as plt
record = wfdb.rdrecord('s0152lre',
channel_names=['i', 'ii',
'iii', 'avr',
'avl', 'avf',
'v1','v2',
'v3','v4',
'v5', 'v6',],
sampfrom=0, sampto=10000,
pn_dir='ptbdb/patient015/')
wfdb.plot_wfdb(record=record, title='Patient 1',figsize=(20,20))

For example, here you can see that Lead i starts from about -4.50 mV or lead aVL starts from about -3.50 mV.
However, if I want to plot the same graph from the website (physionet ATM), the result is different. The plot from the website:

For the plot from the website, It looks like each lead has an offset value to start from 0 mV. For example, the first peak in lead i goes to -3 mV in my plot but it goes a bit further than +1mV in the website plot. Which way is the better to plot the raw signal? I am not professional for analysis of ECG graphs but as far as I understand normal ECG signals are in the range of +- 1.5mV. Do i need to give an offset value for each signal so that the signal can be within this range?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the comparison using Python wfdb.rdrecord on patient015/s0152lre and the first 10 seconds, then compare it with the PhysioNet ATM plot. Determine whether the differing offsets represent an issue or expected presentation, and document the correct interpretation and plotting approach.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100