日常记录学习QCustomPlot的配置和编码过程。
1.结构
QCustomPlot类的命名规则是QCP加xxx。类的组织有很强的区分性,就如图Qt中的模块分类。
Class |
Name |
QCPPlotTitle |
图表标题 |
QCPAxis |
坐标轴、上下左右四个坐标轴 |
QCPGrid |
网格线 |
QCPLegend |
图例 |
QCPGraph |
折线图 |
QCPCurve |
曲线图,可有循环、同一x可有多个y值 |
QCPBars |
柱形图,多个可依次重叠 |
QCPStatisticalBox |
盒子图(需实例化)、统计学箱 |
QCPColorMap |
色谱图(实例化) |
QCPFinancial |
金融图(实例化) |
QCPAbstractItem |
标示项 |
QCPItemStraightLine |
直线 |
QCPItemLine |
线段 |
QCPItemCurve |
曲线 |
QCPItemRect |
矩形 |
QCPItemEllipse |
椭圆 |
QCPItemText |
文本 |
QCPItemTracer |
小圆球 |
QCPItemPixmap |
图片 |
QCPItemBracket |
括弧 |
QCPAxisRect |
坐标轴矩形,用于存放轴 |
表1 QcustomPlot模块分类表
这里并没有全部列出,可以参看如下结构图,详细类继承结构链接:
https://www.qcustomplot.com/documentation/inherits.html
下图中最左边的QCPLayerable意思为“可分层的对象”,分层意味着对象绘制方式是有层次的,可以调整各对象的所在层,进而让一些对象显示在最上层等。所有可绘制到屏幕上的对象,都是它的派生类。
图1 函数QCPLayerable继承结构图
QCPAbstractItem是抽象类“项”,不可直接使用,继承自它的类用于显示一些特殊的图形,比如放上一张图片(QCPItemPixmap)或文字(QCPItemText ),一个可加入箭头的直线(QCPItemLine)等等。
QCPAbstractPlottable 是抽象类“可绘制的图”,继承自它的类,就是可以用于表示数据系列的图线了。比如QCPBars(柱状图) 、QCPColorMap(色图)、QCPGraph(曲线) 、QCPCurve(弧线) 、QCPStatisticalBox (统计学箱)的对应图例如下:
<