1、串口发送Json格式字符串
格式为:
printf("{\"name\":%d}",vol);
如需发送多个键值对,中间用逗号隔开。
printf("{\"name1\":%f,",vol1);
printf("\"Press\":%f}",vol2);
2、字符串转QJsonObject得到键值
//将字符串QString转化为QJsonObject
/*转换为QByteArray*/
QByteArray Data = StrDat.toLocal8Bit();
/*通过QJsonDocument转化为QJsonObject*/
QJsonParseError jsonParseError;
QJsonDocument doc = QJsonDocument::fromJson(Data, &jsonParseError);
QJsonObject jsonObject = doc.object();
/*通过jsonValue得到对应的键值*/
QJsonValue jsonValue_Bend = jsonObject.value("Bend");
3、键值添加到图表
使用append接口添加。当需要显示多条曲线时,采用列表进行管理,分别对曲线添加数据。
4、图表更新(曲线随横坐标移动)
//当曲线上最早的点超出X轴的范围时,剔除最早的点,
series->removePoints(0,series->count());
// 更新X轴的范围
chart->axes(Qt::Horizontal).back()->setMin(count);
chart->axes(Qt::Horizontal).back()->setMax(count);
void QXYSeries::removePoints(int index, int count);
从 index 指定的位置开始,删除曲线中 count 指定的点数。