您好,欢迎光临本网站![请登录][注册会员]  
文件名称: learn_qt_qchart_plot_newdisplay.zip
  所属分类: C++
  开发工具:
  文件大小: 3mb
  下载次数: 0
  上传时间: 2020-07-22
  提 供 者: weixin_********
 详细说明:在使用Qt进行窗口显示的过程中,我们可能需要在新窗口中展示绘图结果。本文章在前文章实现动态曲线展示的基础上,改进为新窗口实时绘制。具体[Qt]利用QChart实现实时动态的曲线数据展示可参考这里: https://blog.csdn.net/weixin_43487953/article/details/107409852 简单效果如图: 首先添加新的Qt设计师界面类 最终可得到如下界面: 在你需要的ui中添加绘图所需控件 利用widget升级为QChartView,显示图像 在主.h中 private: //新窗口 Display *m; signals: void send_list(QVector line); 在主.cpp中 m = new Display; connect(this,SIGNAL(send_list(QVector)),m,SLOT(receive_list(QVector))); 在新生成的数据进行发送: emit send_list(newlist); 例如: void MainWindow::updata_plot() { QVector list; QVector newlist; list = line->pointsVector();//获取现在图中列表 if (list.size() < line_max) { //保持原来 newlist = list; } else { //错位移动 for(int i =1 ; i< list.size();i++) { newlist.append(QPointF(i-1,list.at(i).y())); } } newlist.append(QPointF(newlist.size(),rand()));//最后补上新的数据 emit send_list(newlist); } 在子.h中 //QChart #include using namespace QtCharts; private: //曲线 QSplineSeries* line; //绘图变量和坐标 QChart* chart; //发来数据的接收槽函数 private slots: void receive_list(QVector list); 在子.cpp中 line = new QSplineSeries(this); chart = new QChart(); chart->addSeries(line); //接收槽函数并进行绘制 void Display::receive_list(QVector list) { line->replace(list);//替换更新 line->setName("pressure");//设置曲线名称 line->setPen(QColor(255, 0, 0));//设置曲线颜色 line->setUseOpenGL(true);//openGl 加速 chart->setTitle("Pressure Data");//设置图标标题 chart->removeSeries(line); chart->addSeries(line); chart->createDefaultAxes();//设置坐标轴 ui->widget->setChart(chart); }
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 输入关键字,在本站1000多万海量源码库中尽情搜索: