QChart的系列(QChartSeries)和点(QValue)类。以下是一个简单的例子,它演示了如何使用QChart动态绘制曲线。
#include
#include
QT_CHARTS_USE_NAMESPACE
我们创建一个QLineSeries对象,该对象表示一系列的数据点。我们可以使用append()方法向该系列添加新的数据点。
QLineSeries *series = new QLineSeries();
series->append(0, 6);
series->append(2, 4);
series->append(3, 8);
series->append(7, 4);
series->append(10, 5);
建一个QChart对象,并将上述系列添加到该图表中。我们还可以设置图表的标题和轴标签
QChart *chart = new QChart();
chart->addSeries(series);
chart->setTitle("Dynamic curve");
chart->setAxisXLabel("Time");
chart->setAxisYLabel("Value");
创建一个QChartView对象,并将图表添加到该视图中。我们还可以设置视图的渲染方式
QChartView *chartView = new QChartView(chart);
chartView->setRenderHint(QPainter::Antialiasing);
将QChartView添加到主窗口中,以便用户可以查看图表
QWidget *window = QApplication::desktop()->windowHandle();
window->setCentralWidget(chartView);
#include
#include
#include
QT_CHARTS_USE_NAMESPACE
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLineSeries *series = new QLineSeries();
series->append(0, 6);
series->append(2, 4);
series->append(3, 8);
series->append(7, 4);
series->append(10, 5);
QChart *chart = new QChart();
chart->addSeries(series);
chart->setTitle("Dynamic curve");
chart->setAxisXLabel("Time");
chart->setAxisYLabel("Value");
QChartView *chartView = new QChartView(chart);
chartView->setRenderHint(QPainter::Antialiasing);
QWidget *window = QApplication::desktop()->windowHandle();
window->setCentralWidget(chartView);
window->resize(400, 300);
window->show();
return a.exec();
}