Qt5绘制曲线图(以阻值曲线为例)

        利用阻值数据绘制曲线主要用了Qt自带的函数painter.drawLine(),连接相邻数据点。简要步骤是:

1、初始化历史电阻率图形窗口;

2、从文件读取历史电阻率数据并存储在数组中。特别注意要判断是否读取到了文件尾。

3、绘制坐标轴

4、获得数据中最大值和最小值、平均数

5、计算 x 轴和 y 轴的缩放系数

6、利用painter.drawLine()进行曲线绘制

7、 绘制平均线,刻度线,最大值和最小值

伪代码如下:

void plotWindow::Paint(){
初始化历史电阻率图形窗口;
//从文件读取历史电阻率数据。注意要判断是否读取到了文件尾
 fp = fopen("data.txt", "r");
……
 painter.setRenderHint(QPainter::Antialiasing, true);//设置反锯齿模式,使图像更平滑
绘制坐标轴
获得数据中最大值和最小值、平均数
计算 x 轴和 y 轴的缩放系数:kx =图像宽度÷数据点量-1;ky=图像高度÷最大值
//曲线绘制
for (int i = 0; i < n - 1; i++){
        painter.setPen(pen);//设置连线的画笔
		painter.drawLine(pointx + kx * i, pointy - a[i] * ky, pointx + kx * (i + 1), pointy - a[i + 1] * ky);
        painter.setPen(penPoint);//设置描点的画笔
		painter.drawPoint(pointx + kx * i, pointy - a[i] * ky);
	}
   绘制平均线,刻度线,最大值和最小值
}

完整代码请见博客Qt5绘制曲线图(以阻值数据为例)-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值