使用QChart绘制一个随着时间的变化而动态显示的折线图
每一秒增加1个点,总共显示10s内的数据

显然x轴我们使用日期时间轴
同时使用1个定时器,每隔1秒往折线系列中添加1个数据进去
步骤如下:
1、创建图表视图
//1、创建图表视图
QChartView* view=new QChartView(this);
2、创建图表,并将图表设置给视图
//2.创建图表
QChart * chart = new QChart();
//3.将图表设置给图表视图
view -> setChart(chart);
//设置标题
chart->setTitle("动态折线图");
chart->legend()->show();//显示或者隐藏图例(默认显示)
3、创建x轴(采用QDateTimeAxis日期时间轴),将x轴加到图表中,并设置x的范围为[当前时间,当前时间往后推10s]
//构建x轴-日期时间轴
QDateTimeAxis * axisX = new QDateTimeAxis(this);
axisX -> setTitleText("时间轴");
QDateTime min = QDateTime::currentDateTime(); //当前时间
QDateTime max = min.addSecs(10); //当前时间+10s
axisX -> setRange(min, max); //设置范围,[当前时间,当前时间+10s]
axisX -> setTickCount(11);
axisX -> setFormat("hh:mm:ss"); //设置刻度值的格式
axisX -> setLabelsAngle(45);
chart -> addAxis(axisX, Qt::AlignBottom);

最低0.47元/天 解锁文章
1596

被折叠的 条评论
为什么被折叠?



