sinat_27999793 2015-05-27 03:35 采纳率: 0%
浏览 2246

关于qt问题,拜托各位帮忙注释一下

void MainWindow::SimpleDemo()
{

QTime t;
t=QTime::currentTime();
qsrand(t.msec()+t.second()*1000);
n=qrand()%50+5;
SimpleDemo(ui->qCustomPlot,tempnum,n);
}

void MainWindow::SimpleDemo(QCustomPlot *CustomPlot,double tempnum[10],int i)
{
QVector temp(10);
QVector temp1(10);

for(int i=8;i>=0;i--)
{
tempnum[i+1]=tempnum[i];
}
tempnum[0]=n;
for(int i=0;i<10;i++)
{

   temp[i] = i;
   temp1[i] =tempnum[i];

}
CustomPlot->addGraph();
CustomPlot->graph(0)->setPen(QPen(Qt::red));
CustomPlot->graph(0)->setData(temp,temp1);

CustomPlot->xAxis->setLabel("time");
CustomPlot->yAxis->setLabel("temp/shidu");

CustomPlot->xAxis->setRange(0,11);
CustomPlot->yAxis->setRange(0,100);
CustomPlot->replot();
}

  • 写回答

3条回答

  • 知常曰明 2015-05-27 04:16
    关注

    QCustomPlot是Qt中使用的一个用来画曲线图、趋势图、坐标图、柱状图等类似二维图的库,可在自己的项目中直接使用两个源文件,或预先编译成库。

    void MainWindow::SimpleDemo()
    {
    QTime t;
    t=QTime::currentTime();
    qsrand(t.msec()+t.second()*1000);
    n=qrand()%50+5;   //从本函数开始到现在,随机产生n,看起来是画图的数据量,但是根据后面,这个数其实没有用
    SimpleDemo(ui->qCustomPlot,tempnum,n);   //调用实际画图函数.tempnum是作为画图用的数据.不是在这些代码中产生的,应该是外面带进来的
    }
    void MainWindow::SimpleDemo(QCustomPlot *CustomPlot,double tempnum[10],int i)
    {
    QVector temp(10);
    QVector temp1(10);
    for(int i=8;i>=0;i--)
    {
    tempnum[i+1]=tempnum[i];
    }
    tempnum[0]=n;    //本函数,这里以上的都是在准备要画图的数据.在数组的最前面插入总数据量.(应该是控件要求)
    for(int i=0;i<10;i++)
    {
       temp[i] = i;
       temp1[i] =tempnum[i];
    }                        //将画图的数据整理在固定的数组里面去(应该是为了防止意外改动数据\其他数据操作对此干扰等)
    CustomPlot->addGraph();                    //开始画图
    CustomPlot->graph(0)->setPen(QPen(Qt::red)); //设置图的画笔
    CustomPlot->graph(0)->setData(temp,temp1); //设置图的数据
    CustomPlot->xAxis->setLabel("time");               //设置x坐标的单位
    CustomPlot->yAxis->setLabel("temp/shidu");    //设置y坐标的单位
    CustomPlot->xAxis->setRange(0,11);                  //设置x坐标的取值范围
    CustomPlot->yAxis->setRange(0,100);               //设置y坐标的取值范围
    CustomPlot->replot();                                          //画图
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误