Qt QCustomPlot 取数据,鼠标移动显示
Posted caiyingyong
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt QCustomPlot 取数据,鼠标移动显示相关的知识,希望对你有一定的参考价值。
取数据:
for (int i = 0;i < ui->plot->graph(0)->dataCount();i++) { float x = ui->plot->graph(0)->data()->at(i)->key; float y = ui->plot->graph(0)->data()->at(i)->value; qDebug() << x << y << endl; }
鼠标移动:
connect(ui->plot, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(myMoveEvent(QMouseEvent*))); void MainWindow::myMoveEvent(QMouseEvent *event) { //获取鼠标坐标,相对父窗体坐标 int x_pos = event->pos().x(); int y_pos = event->pos().y(); //鼠标坐标转化为CustomPlot内部坐标 float x_val = ui->plot->xAxis->pixelToCoord(x_pos); float y_val = ui->plot->yAxis->pixelToCoord(y_pos); QString str,strToolTip; str = QString::number(x_val, 10, 3); strToolTip += "x: "; strToolTip += str; strToolTip += " "; for (int i = 0;i < ui->plot->xAxis->graphs().count();i++) { //获得x轴坐标位置对应的曲线上y的值 float y = ui->plot->graph(i)->data()->at(x_val)->value; str = QString::number(y); strToolTip += "y" + QString::number(i) + ":"; strToolTip += str; strToolTip += " "; } QToolTip::showText(cursor().pos(), strToolTip, ui->plot); }
以上是关于Qt QCustomPlot 取数据,鼠标移动显示的主要内容,如果未能解决你的问题,请参考以下文章
QT应用编程: 使用qcustomplot显示动态曲线设计心电图显示页面