分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
Qt 5.7 有一些变化,把原来商业版的几个模块用GPLv3协议放到了社区版本里:
- Qt Charts (GPLv3)
- Qt Data Visualization (GPLv3)
- Qt Virtual Keyboard (GPLv3)
- Qt Purchasing (LGPLv3)
- Qt Quick 2D renderer (GPLv3)
这些模块都是非常赞的!
Qt 5.7 的一些消息,具体参看:
之前在论坛上看好多人在找可以在Qt中使用的图表库,现在好了,官方的有了。还有Qt Quick 2D renderer,支持在没有OpenGL支持的设备上使用Qt Quick,对于一些嵌入式设备来讲,简直是福音。
好久没弄Qt了,发现版本更新好快,我写《Qt Quick核心编程》和《Qt on Android核心编程》时,版本是5.3,现在5.8 alpha都出来了……我已经Out了……
现在偶有时间,赶紧试用了下Qt Charts,简单,好用,没说的啊。
示例效果
先上一个小demo的效果图:
基本用法
Qt Charts作为模块随Qt SDK发布,要使用,首先需要在 pro 文件中加入下面的语句:
QT += charts
- 1
然后,在代码中加入下面的语句:
#include <QtCharts>using namespace QtCharts;
- 1
- 2
再接下来就可以使用Qt Charts模块的各种类库了。介绍下比较常见的类库:
>> QChart
最主要的类了,用来显示各种 Charts 。它是QGraphicsWidget的派生类,所以,可以放在 QGraphicsView 中来显示。我提供的简单示例,就是把 6 个 QChart 放在同一个 QGraphicsScene 中展示出来。
使用 QChart 分三步:
- 构造一个实例,比如 new QChart()
- 调用 addSeries() 添加图表数据,调用 addAxis 、 setAxisX 或 setAxisY 配置坐标轴,以及其他一些设置背景、图例的方法
- 使用 QChartView 或 QGraphicsScene + QGraphicsView 来显示 QChart
>> QChartView
这是一个方便类,从QGraphicsView继承而来,专门用于显示 QChart ,而且,窗口大小变化时,它会自动缩放 QChart 。
你可以独立使用QChartView,也可以把它嵌在你的其它UI界面中。最简单的用法是:
auto chart = new QChart();// ...configure chartQChartView view(lineChart);view.show();
- 1
- 2
- 3
- 4
如果你想使用 QGraphicsView + QGraphicsScene 这种组合,代码类似下面这样:
auto chart = new QChart();// ...configure chartQGraphicsScene scene(0, 0, 500, 400);scene.addItem(chart);QGraphicsView view(&scene);view.show();
- 1
- 2
- 3
- 4
- 5
- 6
注意,使用 QGraphicsView 直接显示 QChart 时,QChart的大小不会随着窗口大小变化而自动变化哦,如有需要,可以自己设置。
>>各种Series及配套的set
Qt Charts用 QAbstractSeries来表示各类图表数据,它有各种各样的派生类。
QAbstractBarSeries 又是一个抽象