2017-04-09 59 views
0

我正在为Qt中的几个Arduino传感器制作数据记录器。问题是我想在3个不同的图表中记录数据,每个图表都有一个特定的比例,然后我将选择要显示的图形(一次显示3个图形中的一个)。隐藏/显示qcustomplot中的多个图

我想是这样的:

QCPGraph *sensorXGraph = ui->graph->addGraph(); 
QCPGraph *sensorYGraph = ui->graph->addGraph(); 
sensorXGraph->setVisible(false); 
sensorYGraph->setVisible(false); 

,然后在一个插槽调用从单选clicked事件我所做的:

sensorXGraph->setVisible(true); 
sensorYGraph->setVisible(false); 

而对于另一个单选倒数。但该图似乎保留了最后创建的图形的轴。所以,如果我试图看到sensorXGraph,数据会相应改变,但y轴范围将是sensorYGraph之一。

我也试图为每个图制作一个QCPAxis,但它开始变得一团糟,因为我必须为每个图制作QCPAxisRect,结果比第一个试用版更差。

我该如何实现从一张图改变到另一张图?

预先感谢您。

回答

0

您可以在QCustomPlot上调用clearGraphs(),然后通过调用addGraph()添加要显示的任何图形,然后在QCustomPlot上调用replot()。

ui->graph->clearGraphs(); 
ui->graph->addGraph(); 
// Do whatever you need to do to edit your graph. 
ui->graph->replot(); 

由于您使用的无线电按钮,我认为它会更容易画出一个图表,并添加基于任何单选按钮被选中的必要的数据和标签:那么它会是这样的。希望这有助于!