QT5的QChart使用记录

醉酒当歌 提交于 2019-12-01 13:07:48

如果需要在QT中使用QChart类,需要在安装的时候勾选QChart选项,在工程的 .pro 文件里面添加 QT += charts 语句,包含 QChart 头文件就行了。

对于图表的显示,可以先拖出来一个控件,比如 widget、Graphics等控件,将其提升为 QChartView 类用于显示 chart。右键该控件选择提升,输入内容可以以图片中的形式作为参考,提升的类名称填写QChartView,头文件名称会根据填写的内容自动生成。

1.折线图

  

2.柱状图

  先创建一个 QBarSet 指针,比如 QBarSet *set0 = new QBarSet(tr("温度")); 这个指针可以作为柱状图的一个显示系列的数据,可以通过 *set0 << 95.26 << 92.38 << 89.5 <<78.9 << 99.0;形式给这个系列赋值,也可以使用对应的函数挨个添加值。之后使用 QBarSeries *series = new QBarSeries(this); 创建一个显示系列,并且把建立的数据加进去 series->append(set0); 剩下的就是把 QBarSeries 添加到 QChart 里面,然后使用提升的 QChartView 控件显示 QChart 。

 1 QBarSet *set0 = new QBarSet(tr("温度"));
 2 *set0 << 95.26 << 92.38 << 89.5 <<78.9 << 99.0;
 3 
 4 QBarSeries *series = new QBarSeries(this);
 5 series->append(set0);
 6 
 7 QChart *chart = new QChart();
 8 chart->addSeries(series);
 9 chart->setAnimationOptions(QChart::SeriesAnimations);
10 
11 QStringList categories;
12 categories << "一个" << "两个" << "三个" << "四个" << "五个";
13 QBarCategoryAxis *axisX = new QBarCategoryAxis();
14 axisX->append(categories);
15 chart->addAxis(axisX, Qt::AlignBottom);
16 series->attachAxis(axisX);
17 
18 QValueAxis *axisY = new QValueAxis();
19 axisY->setRange(0,110);
20 chart->addAxis(axisY, Qt::AlignLeft);
21 series->attachAxis(axisY);
22 
23 chart->legend()->setVisible(true);
24 chart->legend()->setAlignment(Qt::AlignBottom);
25 
26 ui->Bar_View->setChart(chart);
View Code

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!