QT5的QChart使用记录

摘要:
如果需要在QT中使用QChart类,则需要在安装过程中检查QChart选项。将QT+=charts语句添加到pro文件,包括QChart头文件。对于图表显示,您可以首先拖出控件,例如小部件、图形,并将其升级到QChartView类以显示图表。右键单击控件并选择“升级”。输入内容可以用作图片中的参考。为升级的类名填写QChartView,将根据填写的内容自动生成头文件名。

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

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

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 。

QT5的QChart使用记录第2张QT5的QChart使用记录第3张
 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);//设置Y轴数据范围
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

正常显示完成后可以调整柱状图的一些属性,设置柱状图的颜色是通过设置QBarSet实现的

1 set0->setLabelColor(Qt::darkRed);//设置该系列数据显示的柱状图颜色

如果希望在柱状图上面显示出当前柱状图的数值,可以对QSeries进行操作;setLabelsFormat 函数可以使柱状图数据后面附带一种标识,比如代码中的 A。

1 /*   设置图例的柱状图数据显示位置并开启显示   */
2     series->setLabelsPosition(QAbstractBarSeries::LabelsInsideEnd);
3     series->setLabelsVisible(true);
4 
5     //设置显示的后缀符号
6     //series->setLabelsFormat("@value A"); 

免责声明:文章转载自《QT5的QChart使用记录》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇IOS开发---菜鸟学习之路--(十四)-将BASE64图片转换成Imagelinux下svn命令的使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

容器编排系统K8s之包管理器Helm基础使用(一)

前文我们了解了k8s上的hpa资源的使用,回顾请参考:https://www.cnblogs.com/qiuhom-1874/p/14293237.html;今天我们来聊一下k8s包管理器helm的相关话题; helm是什么? 如果我们把k8s的资源清单类比成centos上的rpm包,那么helm的作用就如同yum;简单讲helm就是类似yum这样的包管理...

开源项目推荐:Qt有关的GitHub/Gitee开源项目

尊重作者,支持原创,如需转载,请附上原地址:https://libaineu2004.blog.csdn.net/article/details/77369837 Q:想请教下Qt5 之后推出的qml与之前qt4的ui 开发方式,有冲突吗?我公司开发桌面程序,是两种方式兼用?还是选择其中一种?A:桌面推荐使用QWidget,触摸式的嵌入式设备推荐使用QML...

iReport 中使用 Chart 图

iReport 中使用 Chart 图 SSH2项目中需要引入如下两个jar包: jfreechart-1.0.12.jar jcommon-1.0.15.jar 从 iReport 的安装目录下搜索即可。   参考: http://zhidao.baidu.com/link?url=aJh-ZzuWKDx6ODB3gbwC8rm-UYxqY...

柱状图X轴文字显示不全

解决echarts柱状图横轴文字显示不全 在使用echarts图表框架开发的过程中,当柱状图底部X轴文字过长时,将会出现文字显示不全的问题。 解决代码演示: 1 <!-- 为ECharts准备一个具备大小(宽高)的Dom --> 2 <div style="${width}px;height:${height}px"&g...

Qt5 任务栏托盘功能实现

23333 有一阵子没写博客了,研究了挺长时间qt,学到任务栏托盘时简直无语,网上找得到的代码大多是废码,Qt5不支持或者本身就有毛病不能实现却被n多人转来转去的,甚是无语。 简单托盘功能以下在Qt5.5编译通过: #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow>...

iphone上如何绘制柱状图(转载,整理)

曾经在cocoachina上看到过绘制的立体的柱状图,效果非常不错,下面是链接, http://www.cocoachina.com/bbs/read.php?tid-9462-toread-1.html NTChartView.h #import <Foundation/Foundation.h> @interface NTChartV...