title: “ QtCharts模块在QtWideget中图表绘制(非QML)\t\t”
tags:

  • chart
  • qt
    url: 724.html
    id: 724
    categories:
  • Qt
    date: 2017-12-18 14:28:31

介绍

以前一直用QCustomPlot,现在Qt提供了QtCharts,看起来效果比,模块的帮助文档:QtCharts,所有官方的范例:Example

QChart

提供了三个枚举类型

enum

AnimationOption { NoAnimation, GridAxisAnimations, SeriesAnimations, AllAnimations }

enum

ChartTheme { ChartThemeLight, ChartThemeBlueCerulean, ChartThemeDark, ChartThemeBrownSand, …, ChartThemeQt }

enum

ChartType { ChartTypeUndefined, ChartTypeCartesian, ChartTypePolar }

分别用于定义动画效果、背景风格、以及图标类型是极坐标还是笛卡尔,对于风格方面请见范例Chart Themes Example

Animation不会自己播放,需要在图标刷新时有用,一个是坐标轴和图标网格线一个是series,比如柱状图逐渐升起的过程,最简单的刷新方法:改窗口尺寸

除此以外通过接口可以操作title标题、axis坐标轴,并通过addSeries添加图

其他

  • 建议使用Mapper映射到model中,通过修改model可以动态调整表格
  • QtCharts的new出的对象都会在add、set以后由上一级管理,不需要主动delete