QT-----ChartView控件的使用

chartview可用于制作折线图、饼状图、条行/柱状/直方图系等来体现数据数据变化起浮。以下案例以折线图举例:

1、使用ChartView控件

注意点:1、要在pro文件中加入:QT += widgets

              2、主界面应当使用QApplication进行加载界面;ChartView使用Qt Graphics试图框架进行绘图

 在ChartView中有官方指定的可直接使用的主题进行使用,该主题设计了图表的背景色、标题文本样式、网格线样式等,所以在自己需要重定义的时候记住不要使用官方带的主题,如果使用了官方主题可能会导致自己设置的主题样式失效

theme: ChartView.ChartThemeBlueCerulean---使用官方主题

官方提供的主题:

 x轴:

Y轴:

折线图图表:

 LineSeries为折线图图表;在上面定义了两个x轴和y轴,在定义LineSeries时将两个轴分别加入了LineSeries中。LineSeries中的文本是图例说明,color更改的是图例说明前的图形颜色

其实还可以定义为其他图形,例如散点图、饼状图等,定义不同的图表类型后加入轴就好了,官方提供的图表类型如下:

 使用定时器动态增加数据:

效果图:

 

 知识点:

1、 legend:图例对象:就是上面的红色区域啦,文字是在LineSeries中设定的

2、数据的增加与删除

折线图内是(x,y)坐标点样式的:

增加数据:

a、lineSeries.append(x, y)

b、XYPoint {x: 1000; y: 0}

数据清除:

数据替换:大部分情况下会使用void replace(QList<QPointF> points)动态替换显示数据

 动态创建折线图表和动态替换数据:

踩坑:当时的轴是在自定义控件内定义的,但是在主界面内实现父控件时直接使用子控件id做x和y轴时一直没有效果。后面发下在实例化父类控件时不能直接使用子控件的id名,需要使用别名alias

AbstractSeries createSeries(enumeration type, string name, AbstractAxis axisX, AbstractAxis axisY)


新建类并创建函数进行更新数据:

要使用QLineSeries类需要在pro文件内加入:QT += charts并在使用类中加入头文件#include <QtCharts>

.h

 .cpp

qml:

chartview官方文档:图表视图 QML 类型 |Qt 图表 6.5.0

QYseires官方文档:QXY系列课程 |Qt 图表 5.15.13

数据操作:(5条消息) QtCharts之QXYSeries_nullobject0x01的博客-CSDN博客

添加数据显示:(5条消息) QML charts 鼠标动态跟随数值(十字交叉定位)_qchart鼠标跟踪线_喵喵叫的猴的博客-CSDN博客tooltip官方文档:(5条消息) QML控件类型:ToolTip_qml tooltip_友善啊,朋友的博客-CSDN博客

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值