心电图绘制 C++代码
时间: 2023-07-10 19:16:19 浏览: 281
以下是一个简单的C++代码,用于绘制心电图:
```c++
#include <iostream>
#include <cmath>
#include <fstream>
// 定义常量
const double PI = 3.14159265358979323846;
const int SAMPLE_RATE = 200; // 采样率为200Hz
const int SAMPLE_NUM = 1000; // 采样点数
// 定义函数
double getSinWave(double freq, double time) {
return sin(2 * PI * freq * time);
}
double getECGWave(double time) {
double p = getSinWave(1.0 / 0.16, time) +
getSinWave(1.0 / 0.17, time) +
getSinWave(1.0 / 0.18, time);
return p;
}
// 主函数
int main() {
// 打开文件
std::ofstream file;
file.open("ecg.txt");
// 生成心电图数据
for (int i = 0; i < SAMPLE_NUM; i++) {
double time = i * 1.0 / SAMPLE_RATE;
double ecg = getECGWave(time);
file << i << "," << ecg << std::endl;
}
// 关闭文件
file.close();
std::cout << "Heart rate: " << SAMPLE_RATE * 60 / 17 << std::endl;
return 0;
}
```
该代码使用了正弦波来模拟心电信号,并将绘制的数据输出到了文件中。您可以使用Matlab、Python等工具来读取该文件并绘制心电图。需要注意的是,该代码仅作为简单示例,实际绘制心电图需要考虑更多因素,如滤波、增益、基线漂移等。
阅读全文