qt chart 以时间坐标轴为X轴,在添加数据时,时间转为整数时应转为毫秒单位的整数
qt chart 以时间坐标轴为X轴,在添加数据时,时间转为整数时应转为毫秒单位的整数,同时应注意时间的设置以及转成毫秒的数值bit位数,如果以当前时间转为毫秒则已超出int(32bit)的范围
axisTime = new QDateTimeAxis;
axisTime->setFormat("mm:ss");
axisTime->setLabelsColor("#CCCCCC");
//int min = QDateTime(base_date, base_time).toSecsSinceEpoch();
//int max = QDateTime(base_date, end_time).toSecsSinceEpoch();
axisTime->setMin(QDateTime(base_date, base_time));
axisTime->setMax(QDateTime(base_date, end_time));
axisTime->setTickCount(7);
axisTime->setLabelsVisible(true); //设置刻度是否显示
axisTime->setGridLineVisible(false); //设置是否显示网格线
axisTime->setLinePen(QPen(QColor(51, 51, 51, 25),2,Qt::SolidLine));
axisTime->setLabelsFont(font);
chart->addAxis(axisTime,Qt::AlignBottom);
chart->addAxis(axisY,Qt::AlignLeft);
lineseries->attachAxis(axisTime);
lineseries->attachAxis(axisY);
QDateTime temp(base_date,base_time);
//toSecsSinceEpoch since 1970.1.1 0:0:0
temp = temp.addSecs(count);
int x= temp.toMSecsSinceEpoch();//这里尤其注意,只能转为毫秒,不能转为为秒,否则出现不显示的情况,
serise_yuzhi->append(x,150);
//serise_yuzhi->append(50,x);
if(((count / 10) % 2) == 1)
{
upperSeries->append(x,100);
}
else
{
upperSeries->append(x,50);
}

浙公网安备 33010602011771号