- Qt 6.10
- Qt Graphs
- C++ Classes
- QtGraphs
- QAbstractSeries
- Qt Graphs | Commercial or GPLv3

# QAbstractSeries Class

The QAbstractSeries class is a base class for all Qt Graphs for 2D series. More...

Header: | `#include <QAbstractSeries>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Graphs)` `target_link_libraries(mytarget PRIVATE Qt6::Graphs)`
qmake: | `QT += graphs`
In QML: | AbstractSeries
Inherited By: | QAreaSeries, QBarSeries, QPieSeries, and QXYSeries

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

## Public Types

enum class | SeriesType { Line, Bar, Scatter, Pie, Spline, Area }

## Properties

- `(since 6.10)` axisX : QAbstractAxis*
- `(since 6.10)` axisY : QAbstractAxis*
- hoverable : bool
- hovered : const bool
- legendData : const QList<QLegendData>
- name : QString

- opacity : qreal
- selectable : bool
- type : const SeriesType
- valuesMultiplier : qreal
- visible : bool
- `(since 6.10)` zValue : int

## Public Functions

virtual | ~QAbstractSeries() override
QAbstractAxis * | axisX() const
QAbstractAxis * | axisY() const
void | hide()
bool | isHoverable() const
bool | isHovered() const
bool | isSelectable() const
bool | isVisible() const
const QList<QLegendData> | legendData() const
QString | name() const
qreal | opacity() const
QQmlListProperty<QObject> | seriesChildren()
void | setAxisX(QAbstractAxis *newAxisX)
void | setAxisY(QAbstractAxis *newAxisY)
void | setHoverable(bool newHoverable)
void | setName(const QString &name)
void | setOpacity(qreal opacity)
void | setSelectable(bool selectable)
void | setValuesMultiplier(qreal valuesMultiplier)
void | setVisible(bool visible = true)
void | setZValue(int newDrawOrder)
void | show()
virtual QAbstractSeries::SeriesType | type() const = 0
qreal | valuesMultiplier() const
int | zValue() const

## Signals

void | axisXChanged(QAbstractAxis *newAxis)
void | axisYChanged(QAbstractAxis *newAxis)
void | hover(const QString &seriesName, QPointF position, QPointF value)
void | hoverEnter(const QString &seriesName, QPointF position, QPointF value)
void | hoverExit(const QString &seriesName, QPointF position)
void | hoverableChanged()
void | hoveredChanged(bool hovered)
void | legendDataChanged()
void | nameChanged()
void | opacityChanged()
void | selectableChanged()
void | valuesMultiplierChanged()
void | visibleChanged()
void | zValueChanged(int z)

## Detailed Description

Usually, the series type specific inherited classes are used instead of the base class.

See also QLineSeries, QSplineSeries, QScatterSeries, QBarSeries, and QXYSeries.

## Member Type Documentation

### enum class QAbstractSeries::SeriesType

This enum describes the type of the series.

Constant | Value | Description
--- | --- | ---
`QAbstractSeries::SeriesType::Line` | `0` | A line graph.
`QAbstractSeries::SeriesType::Bar` | `2` | A bar graph.
`QAbstractSeries::SeriesType::Scatter` | `4` | A scatter graph.
`QAbstractSeries::SeriesType::Pie` | `3` | A pie graph.
`QAbstractSeries::SeriesType::Spline` | `5` | A spline graph.
`QAbstractSeries::SeriesType::Area` | `1` | An area graph.

## Property Documentation

### `[since 6.10]` axisX : QAbstractAxis*

X-axis of this series.

The x-axis used for this series. Creates a separate axis from the one defined in GraphsView showing the user multiple axis per graph.

This property was introduced in Qt 6.10.

Access functions:

QAbstractAxis * | axisX() const
void | setAxisX(QAbstractAxis *newAxisX)

Notifier signal:

void | axisXChanged(QAbstractAxis *newAxis)

### `[since 6.10]` axisY : QAbstractAxis*

Y-axis of this series.

The y-axis used for this series. Creates a separate axis from the one defined in GraphsView showing the user multiple axis per graph.

This property was introduced in Qt 6.10.

Access functions:

QAbstractAxis * | axisY() const
void | setAxisY(QAbstractAxis *newAxisY)

Notifier signal:

void | axisYChanged(QAbstractAxis *newAxis)

### hoverable : bool

Controls if the series is hoverable.

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

Access functions:

bool | isHoverable() const
void | setHoverable(bool newHoverable)

Notifier signal:

void | hoverableChanged()

### `[read-only]` hovered : const bool

Check whether a series is hovered on.

Can be used to check whether mouse/touch is currently hovering on a series.

Access functions:

bool | isHovered() const

Notifier signal:

void | hoveredChanged(bool hovered)

See also QAbstractSeries::hovered.

### `[read-only]` legendData : const QList<QLegendData>

Contains information needed to create a legend marker for a data set in a graph.

Access functions:

const QList<QLegendData> | legendData() const

Notifier signal:

void | legendDataChanged()

See also QLegendData.

### name : QString

This property holds the name of the series.

The name is displayed in the legend for the series and it supports HTML formatting.

Access functions:

QString | name() const
void | setName(const QString &name)

Notifier signal:

void | nameChanged()

### opacity : qreal

This property holds the opacity of the series.

By default, the opacity is 1.0. The valid values range from 0.0 (transparent) to 1.0 (opaque).

Access functions:

qreal | opacity() const
void | setOpacity(qreal opacity)

Notifier signal:

void | opacityChanged()

### selectable : bool

Controls if the series is selectable.

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

Access functions:

bool | isSelectable() const
void | setSelectable(bool selectable)

Notifier signal:

void | selectableChanged()

### `[read-only]` type : const SeriesType

This property holds the type of the series.

Access functions:

virtual QAbstractSeries::SeriesType | type() const = 0

### valuesMultiplier : qreal

Controls the series values effective visible value.

This variable can be used for animating the series values so they scale from 0 to actual value size. By default, the valuesMultiplier is 1.0. The valid values range from 0.0 (height 0) to 1.0 (full value).

Access functions:

qreal | valuesMultiplier() const
void | setValuesMultiplier(qreal valuesMultiplier)

Notifier signal:

void | valuesMultiplierChanged()

### visible : bool

Visibility of the series.

The visibility used for this series. By default, visible is set to `true`.

Access functions:

bool | isVisible() const
void | setVisible(bool visible = true)

Notifier signal:

void | visibleChanged()

### `[since 6.10]` zValue : int

Controls the order in which the series is drawn

The series list of GraphsView is sorted by the zValue property. Since each series type is rendered at once, the order mostly works as an internal order of each series type. The highest zValue of each series type determines the order of rendering among series types. The default value is 0.

This property was introduced in Qt 6.10.

Access functions:

int | zValue() const
void | setZValue(int newDrawOrder)

Notifier signal:

void | zValueChanged(int z)

## Member Function Documentation

### `[override virtual noexcept]` QAbstractSeries::~QAbstractSeries()

Virtual destructor for the graph series.

### void QAbstractSeries::hide()

Sets the visibility of the series to `false`.

See also setVisible() and isVisible().

### `[signal]` void QAbstractSeries::hover(const QString &seriesName, QPointF position, QPointF value)

This signal is emitted when the series hovering changes. The name of the series is in seriesName, the mouse/touch position in position, and the series value in value.

Note: This signal is only emitted when hoverable is set to true.

Note: For Pie graph, the value represents (angle of position, start angle of hovering slice)

### `[signal]` void QAbstractSeries::hoverEnter(const QString &seriesName, QPointF position, QPointF value)

This signal is emitted when the series hovering starts. The name of the series is in seriesName, the mouse/touch position in position, and the series value in value.

Note: This signal is only emitted when hoverable is set to true.

Note: For Pie graph, the value represents (angle of position, start angle of hovering slice)

### `[signal]` void QAbstractSeries::hoverExit(const QString &seriesName, QPointF position)

This signal is emitted when the series hovering ends. The name of the series is in seriesName, and the mouse/touch position in position.

Note: This signal is only emitted when hoverable is set to true.

### void QAbstractSeries::show()

Sets the visibility of the series to `true`.

See also setVisible() and isVisible().