代码拉取完成,页面将自动刷新
#include "plot.h"
#include "ui_plot.h"
#include "qcustomplot.h"
plot::plot(QWidget *parent) :
QWidget(parent),
ui(new Ui::plot)
{
ui->setupUi(this);
start(ui->curveplot);
}
plot::~plot()
{
delete ui;
}
void plot::start(QCustomPlot* customPlot){
customPlot->addGraph(); //添加图层
customPlot->graph(0)->setPen(QPen(QColor(40,110,255)));//设置画笔
QSharedPointer<QCPAxisTickerTime> timeTicker(new QCPAxisTickerTime);
timeTicker->setTimeFormat("%h:%m:%s");
customPlot->xAxis->setTicker((timeTicker));
customPlot->yAxis->setRange(0,20);
connect(customPlot->xAxis, SIGNAL(rangeChanged(QCPRange)), customPlot->xAxis2, SLOT(setRange(QCPRange)));
connect(customPlot->yAxis, SIGNAL(rangeChanged(QCPRange)), customPlot->yAxis2, SLOT(setRange(QCPRange)));
connect(&timer,&QTimer::timeout,this,&plot::realtimeDataSlot);
timer.start(20);
}
void plot::realtimeDataSlot(){
static QTime timestart=QTime::currentTime();
double key=timestart.msecsTo(QTime::currentTime())/1000.0;
static double lastPointKey=0;
if(key-lastPointKey>0.002){
ui->curveplot->graph(0)->addData(key,char_to_int(data));
lastPointKey=key;
}
ui->curveplot->xAxis->setRange(key,8,Qt::AlignRight);
ui->curveplot->replot();
}
void plot::set_data(char _data){
data=_data;
}
int char_to_int(char _ch){
return int(_ch-'0');
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。