QBarCategoryAxis、QColorAxis、QDateTimeAxis、QLogValueAxis、QValueAxis

这些类都继承自 QAbstractAxis。 

QBarCategoryAxis

一、描述

QBarCategoryAxis 类提供柱状图的轴。

以下代码说明了如何使用 QBarCategoryAxis:

#include <QApplication>
#include <QChartView>
#include <QBarSeries>
#include <QBarCategoryAxis>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QChartView chartView;
    QBarSeries *series = new QBarSeries;
    chartView.chart()->addSeries(series);
    chartView.chart()->createDefaultAxes();

    QBarCategoryAxis *axisX = new QBarCategoryAxis;
    QStringList categories;
    categories << "Jan" << "Feb" << "Mar" << "Apr" << "May" << "Jun";
    axisX->append(categories);
    axisX->setRange("Feb", "May");
    chartView.chart()->setAxisX(axisX, series);
    chartView.show();
    return a.exec();
}

二、属性成员

1、categories : QStringList | void categoriesChanged()

轴的上的文本列表。

2、count : const int | void countChanged()

轴的上的文本数量。

3、max : QString | void maxChanged(const QString &max)

      min : QString | void minChanged(const QString &min)

                             | void rangeChanged(const QString &min, const QString &max)

轴上的最大值、最小值。

三、成员函数

1、void append(const QStringList &categories)

将 categories 附加到轴。

void append(const QString &category)

 

void insert(int index, const QString &category)

将类别插入到索引处的轴。 

2、QString at(int index)

返回索引处的类别。索引必须有效。

3、QStringList categories()

返回类别列表。

4、【invokable】void clear()

删除所有类别。将轴范围的最大值和最小值设置为 QString::null。

5、void remove(const QString &category)

从轴中删除类别。

6、void replace(const QString &oldCategory, const QString &newCategory)


QColorAxis

一、描述

颜色轴,可以根据传递的渐变显示颜色比例。

二、属性成员

1、autoRange : bool

是否应从 QXYSeries::colorBy() 方法中传递的值列表中设置范围或从轴本身获取范围的属性。默认为true。

2、max : qreal / min : qreal

轴上最大值、最小值。

3、size : qreal

色标(color scale)的大小。根据对齐方式,该值指示宽度或高度。

4、tickCount : int

轴上刻度线的数量。如果 QColorAxis::gridVisible 等于 true,这表示在图表上绘制了多少条网格线。默认值为 5,数量不能小于 2。

默认情况下,网格线在 QColorAxis 中是不可见的,因为这种类型的轴不代表几何值。

三、成员函数

1、void setGradient(const QLinearGradient &gradient)

设置色阶上的渐变。如果轴附加到一个取消,渐变也被 QXYSeries::colorBy() 方法使用。


QDateTimeAxis

一、描述

QDateTimeAxis 类是将日期和时间添加到图表的轴。可以通过设置适当的 DateTime 格式来配置标签。QDateTimeAxis 适用于从公元前 4714 年到公元 287396 年的日期。

注意:QDateTimeAxis 在将 qreal 定义为浮点数的平台上被禁用。

QLineSeries *series = new QLineSeries;

QDateTime xValue;
xValue.setDate(QDate(2012, 1 , 18));
xValue.setTime(QTime(9, 34));
qreal yValue = 12;
series->append(xValue.toMSecsSinceEpoch(), yValue);

xValue.setDate(QDate(2013, 5 , 11));
xValue.setTime(QTime(11, 14));
qreal yValue = 22;
series->append(xValue.toMSecsSinceEpoch(), yValue);
QChartView *chartView = new QChartView;
chartView->chart()->addSeries(series);

// ...
QDateTimeAxis *axisX = new QDateTimeAxis;
axisX->setFormat("dd-MM-yyyy h:mm");
chartView->chart()->setAxisX(axisX, series);

二、属性成员

1、format : QString

在从 QDateTime 对象创建轴标签时使用的格式字符串。

2、max : QDateTime / min : QDateTime

轴上的最大值、最小值。

3、tickCount : int

轴上刻度线的数量。


QLogValueAxis

一、描述

QLogValueAxis 类是向图表的轴添加对数刻度的轴。

对数刻度是基于数量级的非线性刻度,因此轴上的每个刻度线都是前一个刻度线乘以一个值。

注意:如果 QLogValueAxis 附加到具有一个或多个在相关维度上具有负值或零值的点的曲线,则根本不会绘制该曲线。

二、属性成员

1、base : qreal

对数的底。该值必须大于 0 且不能等于 1。

2、labelFormat : QString

轴的标签格式。

格式字符串支持标准 C++ 库中 printf() 提供的以下转换说明符、长度修饰符和标志:d、i、o、x、X、f、F、e、E、g、G、c。

如果 QChart::localizeNumbers 为true,则支持的说明符仅限于:d、e、E、f、g、G 和 i。 此外,仅支持精度修饰符。其余的格式来自应用程序的默认 QLocale

3、max : qreal / min : qreal

轴上的最大值、最小值。

4、minorTickCount : int

轴上的次要刻度线的数量。这表明在图表上的主要刻度之间绘制了多少条网格线。不为小刻度绘制标签。默认值为 0。将值设置为 -1 将自动计算主要刻度之间的网格线数。

5、【只读】tickCount : const int

轴上刻度线的数量。这表示在图表上绘制了多少条网格线。


QValueAxis

一、描述

QValueAxis 类将值添加到图表的轴。

QChartView *chartView = new QChartView;
QLineSeries *series = new QLineSeries;
// ...
chartView->chart()->addSeries(series);

QValueAxis *axisX = new QValueAxis;
axisX->setRange(10, 20.5);
axisX->setTickCount(10);
axisX->setLabelFormat("%.2f");
chartView->chart()->setAxisX(axisX, series);

二、类型成员

1、enum QValueAxis::TickType:此枚举描述了刻度和标签如何在轴上定位。

  • TicksDynamic:根据 tickAnchortickInterval 值放置刻度。
  • TicksFixed:刻度均匀地分布在轴范围内。tickCount 值指定刻度数。

三、属性成员

1、labelFormatmaxminminorTickCount

同上。

2、tickAnchor : qreal

动态放置的刻度线和标签的起始值。

3、tickCount : int

轴上刻度线的数量。这表示在图表上绘制了多少条网格线。默认值为 5,数量不能小于 2。

4、tickInterval : qreal

动态放置的刻度线和标签之间的间隔。

5、tickType : TickType

刻度和标签的定位方法。

四、成员函数

1、void applyNiceNumbers()

修改轴上刻度线的当前范围和数量,使其看起来不错。该算法认为可以表示为 1*10^n、2*10^n 或 5*10^n 形式的数字是不错的数字。这些数字用于设置刻度线的间距。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值