【QT】Qt Charts概述

本文介绍了QtCharts模块,重点讲解了QChartView和QChart的功能,包括序列、坐标轴、图例等图表的主要组成部分。通过示例展示了如何创建一个简单的QChart绘图程序,帮助理解QtCharts在数据可视化中的应用。

   

目录

1 QtCharts模块

2 图表的主要组成部分

2.1 QChartView的功能

2.2 序列

2.3 坐标轴

2.4 图例

3 一个简单的QChart绘图程序


    QtCharts是Qt提供的图表模块,在Qt5.7以前只有商业版才有Qt Charts,但是从Qt5.7开始,社区版本也包含了Qt Charts。Qt Charts可以很方便地绘制常见的折线图、柱状图、饼图等图表。

1 QtCharts模块

        Qt Charts模块是一组易于使用的图表组件,它基于Qt的Graphics View架构,其核心组件是QChartView和QChart。

        QChartView的父类是QGraphicsView,就是Graphics View架构中的视图组件,所以,QChart View是用于显示图表的视图。

        QChart的继承关系如图9-1所示,可以看到,QChart是从QGraphicsItem继承而来的,所以,QChart是一种图形项。

        QPolarChart是用于绘制极坐标图的图表类,它从QChart继承而来。

要在项目中使用QtCharts模块,必须在项目的配置文件(.pro文件)中增加下面的一行语句:

Qt+=charts

        在需要使用QtCharts的类的头文件或源程序文件中,要使用如下的包含语句:

        #include <QtCharts>

        using namespace QtCharts;

        也可以使用宏定义:

        #include <QtCharts>

        Qt_CHARTS_USE_NAMESPACE

2 图表的主要组成部分

        QChartView是QChart的视图组件,而一个QChart一般包括序列、坐标轴、图例、图表标题等部分。

        QChart接口函数众多,其主要接口函数分类整理后见下表。

分组

函数名

功能描述

图表外观

void setTitle()

void setTitIeFont()

void setTitleBrush()

void setTheme()

void setMargins()

QLegend * legend()

void setAnimationOptions()

设置图表标题.显示在图表上方,支持HTML格式

设置图表标题字体

设置图表标题画刷

设置主题,主题是内置的UI设置,定义了图表的配色

设置绘图区与图表边界的4个边距

返回图表的图例

设置序列或坐标轴的动画效果

数据序列

void addSeries()

QList< QAbstractSeries > series()

void removeSeries()

void removeAIISeries()

添加序列

返回图表拥有的序列的列表

移除-个序列,但并不删除序列对象

移除并删除图表的所有序列

坐标轴

void addAxis()

QList axes() 

void setAxisX() 

void setAxisY() 

void removeAxis() 

void createDefaultAxes()

为图表的某个方向添加坐标轴 

返回某个方向的坐标轴列表 

设置某个序列的水平方向的坐标轴

设罝某个序列的垂直方向的坐标轴 

移除一个坐标轴 

根据己添加的序列的类型,创建缺省的坐标轴,前面已有的坐标轴会被删除

        setAnimationOptions(AnimationOptions options)函数设置图表的动画效果,输入参数是QChart::AnimationOptions枚举类型,有以下几种取值:

  •     QChart::NoAnimation---- 无动画效果

  •     QChart::GridAxisAnimations---- 背景网格有动画效果:

  •    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冷凝女子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值