- Qt 6.12
- Qt Graphs
- C++ Classes
- QtGraphs
- QXYSeries
- Qt Graphs | Commercial or GPLv3

# QXYSeries Class

The QXYSeries class is a parent class for all x & y series classes. More...

Header: | `#include <QXYSeries>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Graphs)` `target_link_libraries(mytarget PRIVATE Qt6::Graphs)`
qmake: | `QT += graphs`
In QML: | XYSeries
Inherits: | QAbstractSeries
Inherited By: | QLineSeries, QScatterSeries, and QSplineSeries

- List of all members, including inherited members
- QXYSeries is part of Qt Graphs C++ Classes for 2D.

## Public Types

`(since 6.12)` enum class | ValueMapping { X, Y }

## Properties

color : QColor count : qsizetype draggable : bool pointDelegate : QQmlComponent* selectedColor : QColor | selectedPoints : QList<qsizetype> `(since 6.12)` stepSize : qreal `(since 6.12)` valueMapping : ValueMapping `(since 6.12)` valueMin : qreal `(since 6.12)` values : QVariantList

## Public Functions

void | append(QPointF point)
void | append(const QList<QPointF> &points)
void | append(qreal x, qreal y)
QPointF | at(qsizetype index) const
void | clear()
QColor | color() const
qsizetype | count() const
void | deselectAllPoints()
void | deselectPoint(qsizetype index)
void | deselectPoints(const QList<qsizetype> &indexes)
qsizetype | find(QPointF point) const
void | insert(qsizetype index, QPointF point)
bool | isDraggable() const
bool | isPointSelected(qsizetype index) const
QQmlComponent * | pointDelegate() const
QList<QPointF> | points() const
void | remove(QPointF point)
void | remove(qsizetype index)
void | remove(qreal x, qreal y)
void | removeMultiple(qsizetype index, qsizetype count)
void | replace(const QList<QPointF> &points)
void | replace(QPointF oldPoint, QPointF newPoint)
void | replace(qsizetype index, QPointF newPoint)
void | replace(qsizetype index, qreal newX, qreal newY)
void | replace(qreal oldX, qreal oldY, qreal newX, qreal newY)
void | selectAllPoints()
void | selectPoint(qsizetype index)
void | selectPoints(const QList<qsizetype> &indexes)
QColor | selectedColor() const
QList<qsizetype> | selectedPoints() const
void | setColor(QColor newColor)
void | setDraggable(bool newDraggable)
void | setPointDelegate(QQmlComponent *newPointDelegate)
void | setPointSelected(qsizetype index, bool selected)
void | setSelectedColor(QColor color)
void | setStepSize(qreal stepSize)
void | setValueMapping(QXYSeries::ValueMapping newHint)
void | setValueMin(qreal newMin)
void | setValues(QVariantList values)
qreal | stepSize() const
bool | take(QPointF point)
void | toggleSelection(const QList<qsizetype> &indexes)
QXYSeries::ValueMapping | valueMapping() const
qreal | valueMin() const
QVariantList | values() const

## Signals

void | colorChanged(QColor color)
void | countChanged()
void | draggableChanged()
void | pointDelegateChanged()
void | pointReplaced(qsizetype index)
`(since 6.9)` void | pointsAdded(qsizetype start, qsizetype end)
void | pointsReplaced()
void | selectedColorChanged(QColor color)
void | selectedPointsChanged()
void | stepSizeChanged(qreal newStepSize)
void | valueMappingChanged(QXYSeries::ValueMapping newHint)
void | valueMinChanged(qreal newMin)
void | valuesChanged(const QVariantList &values)

## Detailed Description

In QXYSeries, data points are defined as a list of QPointF, defining X and Y positions.

See also QLineSeries and QScatterSeries.

## Member Type Documentation

### `[since 6.12]` enum class QXYSeries::ValueMapping

This enum describes how plain numbers in values are interpreted.

Constant | Value | Description
--- | --- | ---
`QXYSeries::ValueMapping::X` | `0` | Each number is the X value; Y is generated from the index and stepSize.
`QXYSeries::ValueMapping::Y` | `1` | Each number is the Y value; X is generated from valueMin and stepSize.

This enum was introduced in Qt 6.12.

## Property Documentation

### color : QColor

This property holds the main color of the series. For QLineSeries this means the line color and for QScatterSeries the color of the point.

Access functions:

QColor | color() const
void | setColor(QColor newColor)

Notifier signal:

void | colorChanged(QColor color)

### `[read-only]` count : qsizetype

Returns the number of data points in a series.

Access functions:

qsizetype | count() const

Notifier signal:

void | countChanged()

### draggable : bool

Controls if the series is draggable.

Controls if the series can be dragged with mouse/touch. By default, draggable is set to `false`.

Access functions:

bool | isDraggable() const
void | setDraggable(bool newDraggable)

Notifier signal:

void | draggableChanged()

### pointDelegate : QQmlComponent*

This property holds a custom QML Component used as a marker for data points.

The dynamic properties available for this component are:

Type | Name | Description
--- | --- | ---
bool | pointSelected | This value is true when the point is selected, meaning that the point index is in QXYSeries::selectedPoints.
QColor | pointColor | The color of the series. This value comes either from the QGraphsTheme or from QXYSeries::color if the QXYSeries overrides the color.
QColor | pointBorderColor | The border color of the series. This value comes from the QGraphsTheme.
QColor | pointSelectedColor | The selected color of the series. This value comes either from the QGraphsTheme or from QXYSeries::selectedColor if the QXYSeries overrides the color.
qreal | pointBorderWidth | The border width of the series. This value comes from the QGraphsTheme.
qreal | pointValueX | The value of the QXYPoint::x at this position.
qreal | pointValueY | The value of the QXYPoint::y at this position.
int | pointIndex | The index of the point, from 0 to the amount of points - 1. [since 6.9]

To use any of these, add property with the defined name into your custom component. For example `"property color pointColor"` and `"property real pointValueX"`.

Access functions:

QQmlComponent * | pointDelegate() const
void | setPointDelegate(QQmlComponent *newPointDelegate)

Notifier signal:

void | pointDelegateChanged()

### selectedColor : QColor

This property holds the color of selected points.

Access functions:

QColor | selectedColor() const
void | setSelectedColor(QColor color)

Notifier signal:

void | selectedColorChanged(QColor color)

### `[read-only]` selectedPoints : QList<qsizetype>

This property holds the indexes of the points which are currently selected.

Access functions:

QList<qsizetype> | selectedPoints() const

Notifier signal:

void | selectedPointsChanged()

### `[since 6.12]` stepSize : qreal

This property holds the step size between auto-generated X (or Y) values when populating the series from plain numbers via values.

The default value is 1.

This enumeration was introduced in Qt 6.12.

Access functions:

qreal | stepSize() const
void | setStepSize(qreal stepSize)

Notifier signal:

void | stepSizeChanged(qreal newStepSize)

See also values, valueMapping, and valueMin.

### `[since 6.12]` valueMapping : ValueMapping

Controls how numbers in values are interpreted.

When values contains plain numbers rather than QPointF values, this property determines whether each number is the X or Y component of a point.

This enumeration was introduced in Qt 6.12.

Access functions:

QXYSeries::ValueMapping | valueMapping() const
void | setValueMapping(QXYSeries::ValueMapping newHint)

Notifier signal:

void | valueMappingChanged(QXYSeries::ValueMapping newHint)

See also values, valueMin, and stepSize.

### `[since 6.12]` valueMin : qreal

This property holds the minimum X (or Y) value used when generating points from plain numbers in values.

Used together with stepSize when valueMapping is `ValueMapping::Y` to generate the X values for each point.

The default value is 0.

This enumeration was introduced in Qt 6.12.

Access functions:

qreal | valueMin() const
void | setValueMin(qreal newMin)

Notifier signal:

void | valueMinChanged(qreal newMin)

See also values, valueMapping, and stepSize.

### `[since 6.12]` values : QVariantList

This property holds the points of the series, set declaratively.

The variant list can contain either QPointF values or numbers. If numbers are given, valueMapping controls whether each number is interpreted as an X or Y component.

This enumeration was introduced in Qt 6.12.

Access functions:

QVariantList | values() const
void | setValues(QVariantList values)

Notifier signal:

void | valuesChanged(const QVariantList &values)

See also valueMapping, valueMin, and stepSize.

## Member Function Documentation

### `[invokable]` void QXYSeries::append(QPointF point)

Appends a point with the coordinates point to the series.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::append(const QList<QPointF> &points)

Appends points with the coordinates points to the series.

Note: This is much faster than appending data points one by one. Emits pointsAdded when the points have been added.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::append(qreal x, qreal y)

Appends a point with the coordinates x and y to the series.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` QPointF QXYSeries::at(qsizetype index) const

Returns the point at the position specified by index. Returns (0, 0) if the index is not valid.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::clear()

Removes all points from the series.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::deselectAllPoints()

Deselects all points in the series.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### `[invokable]` void QXYSeries::deselectPoint(qsizetype index)

Deselects point at given index.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### `[invokable]` void QXYSeries::deselectPoints(const QList<qsizetype> &indexes)

Marks multiple points passed in a indexes list as deselected.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### `[invokable]` qsizetype QXYSeries::find(QPointF point) const

Finds and returns the index of the first matching point found as defined by point. Returns -1 if the point is not found.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::insert(qsizetype index, QPointF point)

Inserts a point with the coordinates point to the position specified by index in the series. If the index is 0 or less than 0, the point is prepended to the list of points. If the index is equal to or greater than than the number of points in the series, the point is appended to the list of points.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` bool QXYSeries::isPointSelected(qsizetype index) const

Returns true if point at given index is among selected points and false otherwise.

Note: Selected points are drawn using the selected color if it was specified.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also selectedPoints, setPointSelected(), and setSelectedColor().

### `[signal]` void QXYSeries::pointReplaced(qsizetype index)

This signal is emitted when a point is replaced at the position specified by index.

See also replace().

### QList<QPointF> QXYSeries::points() const

Returns the points in the series.

### `[signal, since 6.9]` void QXYSeries::pointsAdded(qsizetype start, qsizetype end)

This signal is emitted when a list of points is appended. The indexes of the new added points are between start and end.

This function was introduced in Qt 6.9.

### `[signal]` void QXYSeries::pointsReplaced()

This signal is emitted when all points are replaced.

### `[invokable]` void QXYSeries::remove(QPointF point)

Removes the point with the coordinates point from the series. Does nothing if the point does not exist.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::remove(qsizetype index)

Removes the point at the position specified by index from the series.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::remove(qreal x, qreal y)

Removes the point with the coordinates x and y from the series. Does nothing if the point does not exist.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::removeMultiple(qsizetype index, qsizetype count)

Removes the number of points specified by count from the series starting at the position specified by index.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::replace(const QList<QPointF> &points)

Replaces the current points with the points specified by points

Note: This is much faster than replacing data points one by one, or first clearing all data, and then appending the new data. Emits pointsReplaced when the points have been replaced.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::replace(QPointF oldPoint, QPointF newPoint)

Replaces the point with the coordinates oldPoint with the point with the coordinates newPoint. Does nothing if the old point does not exist.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::replace(qsizetype index, QPointF newPoint)

Replaces the point at the position specified by index with the point that has the coordinates newPoint.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::replace(qsizetype index, qreal newX, qreal newY)

Replaces the point at the position specified by index with the point that has the coordinates newX and newY.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::replace(qreal oldX, qreal oldY, qreal newX, qreal newY)

Replaces the point with the coordinates oldX and oldY with the point with the coordinates newX and newY. Does nothing if the old point does not exist.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::selectAllPoints()

Marks all points in the series as selected,

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### `[invokable]` void QXYSeries::selectPoint(qsizetype index)

Marks point at index as selected.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### `[invokable]` void QXYSeries::selectPoints(const QList<qsizetype> &indexes)

Marks multiple points passed in a indexes list as selected.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().

### QList<qsizetype> QXYSeries::selectedPoints() const

Returns a list of points indexes marked as selected. Selected points are visible regardless of points visibility.

Note: Getter function for property selectedPoints.

See also setPointSelected().

### `[invokable]` void QXYSeries::setPointSelected(qsizetype index, bool selected)

Marks point at given index as either selected or deselected as specified by selected.

Note: Selected points are drawn using the selected color if it was specified. Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also isPointSelected(), selectAllPoints(), and setSelectedColor().

### `[invokable]` bool QXYSeries::take(QPointF point)

Takes a point, specified by point, out of the series if found. Returns `true` if the operation is successful.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

### `[invokable]` void QXYSeries::toggleSelection(const QList<qsizetype> &indexes)

Changes selection state of points at given indexes to the opposite one.

Note: Emits QXYSeries::selectedPointsChanged

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also setPointSelected().