Qt 5.11 | Qt Charts | C++ Classes | QDateTimeAxis

Qt Charts | Commercial or GPLv3

# QDateTimeAxis Class

The QDateTimeAxis class adds dates and times to a chart's axis. More...

Header: | #include <QDateTimeAxis>
Instantiated By: | DateTimeAxis
Inherits: | QAbstractAxis

- List of all members, including inherited members

## Properties

- format : QString
- max : QDateTime
- min : QDateTime
- tickCount : int

- 27 properties inherited from QAbstractAxis

## Public Functions

| QDateTimeAxis(QObject *parent = nullptr)
virtual | ~QDateTimeAxis()
QString | format() const
QDateTime | max() const
QDateTime | min() const
void | setFormat(QString format)
void | setMax(QDateTime max)
void | setMin(QDateTime min)
void | setRange(QDateTime min, QDateTime max)
void | setTickCount(int count)
int | tickCount() const

## Reimplemented Public Functions

virtual QAbstractAxis::AxisType | type() const

- 58 public functions inherited from QAbstractAxis

## Signals

void | formatChanged(QString format)
void | maxChanged(QDateTime max)
void | minChanged(QDateTime min)
void | rangeChanged(QDateTime min, QDateTime max)
void | tickCountChanged(int tick)

- 25 signals inherited from QAbstractAxis

## Detailed Description

The QDateTimeAxis class adds dates and times to a chart's axis.

QDateTimeAxis can be set up to show an axis line with tick marks, grid lines, and shades. The labels can be configured by setting an appropriate DateTime format. QDateTimeAxis works correctly with dates from 4714 BCE to 287396 CE. For other limitiations related to QDateTime, see QDateTime documentation.

Note: QDateTimeAxis is disabled on platforms that define qreal as float.

QDateTimeAxis can be used with any QXYSeries. To add a data point to the series, QDateTime::toMSecsSinceEpoch() is used:

      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);

The following code snippet illustrates adding the series to the chart and setting up QDateTimeAxis:

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

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

## Property Documentation

### format : QString

This property holds the format string that is used when creating the label for the axis out of a QDateTime object.

See QDateTime documentation for information on how the string should be defined.

Access functions:

QString | format() const
void | setFormat(QString format)

Notifier signal:

void | formatChanged(QString format)

See also QChart::locale.

### max : QDateTime

This property holds the maximum value on the axis.

When setting this property, the minimum value is adjusted if necessary, to ensure that the range remains valid.

Access functions:

QDateTime | max() const
void | setMax(QDateTime max)

Notifier signal:

void | maxChanged(QDateTime max)

### min : QDateTime

This property holds the minimum value on the axis.

When setting this property, the maximum value is adjusted if necessary, to ensure that the range remains valid.

Access functions:

QDateTime | min() const
void | setMin(QDateTime min)

Notifier signal:

void | minChanged(QDateTime min)

### tickCount : int

This property holds the number of tick marks on the axis.

Access functions:

int | tickCount() const
void | setTickCount(int count)

Notifier signal:

void | tickCountChanged(int tick)

## Member Function Documentation

### QDateTimeAxis::QDateTimeAxis(QObject *parent = nullptr)

Constructs an axis object that is a child of parent.

### `[virtual]` QDateTimeAxis::~QDateTimeAxis()

Destroys the object.

### `[signal]` void QDateTimeAxis::rangeChanged(QDateTime min, QDateTime max)

### void QDateTimeAxis::setRange(QDateTime min, QDateTime max)

Sets the range on the axis from min to max. If min is greater than max, this function returns without making any changes.

### void QDateTimeAxis::setTickCount(int count)

Sets the number of tick marks on the axis to count.

Note: Setter function for property tickCount.

See also tickCount().

### `[virtual]` QAbstractAxis::AxisType QDateTimeAxis::type() const

Reimplemented from QAbstractAxis::type().

Returns the type of the axis.