- Qt 6.7
- Qt Graphs
- C++ Classes
- QtGraphs (Technical Preview)
- QScatter3DSeries
- Qt Graphs | Commercial or GPLv3

# QScatter3DSeries Class

The QScatter3DSeries class represents a data series in a 3D scatter graph. More...

Header: | #include <QScatter3DSeries>
CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: | QT += graphs
Instantiated By: | Scatter3DSeries
Inherits: | QAbstract3DSeries
Status: | Technical Preview

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

## Properties

- dataProxy : QScatterDataProxy*
- itemSize : float
- selectedItem : int

## Public Functions

| QScatter3DSeries(QObject *parent = nullptr)
| QScatter3DSeries(QScatterDataProxy *dataProxy, QObject *parent = nullptr)
virtual | ~QScatter3DSeries() override
QScatterDataProxy * | dataProxy() const
float | itemSize() const
int | selectedItem() const
void | setDataProxy(QScatterDataProxy *proxy)
void | setItemSize(float size)
void | setSelectedItem(int index)

## Signals

void | dataProxyChanged(QScatterDataProxy *proxy)
void | itemSizeChanged(float size)
void | selectedItemChanged(int index)

## Static Public Members

int | invalidSelectionIndex()

## Detailed Description

This class manages the series specific visual elements, as well as the series data (via a data proxy).

If no data proxy is set explicitly for the series, the series creates a default proxy. Setting another proxy will destroy the existing proxy and all data added to it.

QScatter3DSeries supports the following format tags for QAbstract3DSeries::setItemLabelFormat():

@xTitle | Title from x-axis
@yTitle | Title from y-axis
@zTitle | Title from z-axis
@xLabel | Item value formatted using the format of the x-axis. For more information, see QValue3DAxis::setLabelFormat().
@yLabel | Item value formatted using the format of the y-axis. For more information, see QValue3DAxis::setLabelFormat().
@zLabel | Item value formatted using the format of the z-axis. For more information, see QValue3DAxis::setLabelFormat().
@seriesName | Name of the series

For example:

     proxy->setItemLabelFormat(QStringLiteral("@valueTitle for (@rowLabel, @colLabel): %.1f"));

See also Qt Graphs Data Handling with 3D.

## Property Documentation

### dataProxy : QScatterDataProxy*

This property holds the active data proxy.

Access functions:

QScatterDataProxy * | dataProxy() const
void | setDataProxy(QScatterDataProxy *proxy)

Notifier signal:

void | dataProxyChanged(QScatterDataProxy *proxy)

### itemSize : float

Item size for the series.

The size must be between `0.0f` and `1.0f`. Setting the size to `0.0f` causes the item size to be automatically scaled based on the total number of items in all the series for the graph.

The preset default is `0.0f`.

Access functions:

float | itemSize() const
void | setItemSize(float size)

Notifier signal:

void | itemSizeChanged(float size)

### selectedItem : int

This property holds the item that is selected in the series.

Access functions:

int | selectedItem() const
void | setSelectedItem(int index)

Notifier signal:

void | selectedItemChanged(int index)

## Member Function Documentation

### `[explicit]` QScatter3DSeries::QScatter3DSeries(QObject *parent = nullptr)

Constructs a scatter 3D series with the parent parent.

### `[explicit]` QScatter3DSeries::QScatter3DSeries(QScatterDataProxy *dataProxy, QObject *parent = nullptr)

Constructs a scatter 3D series with the data proxy dataProxy and the parent parent.

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

Deletes the scatter 3D series.

### `[static]` int QScatter3DSeries::invalidSelectionIndex()

Returns an invalid index for selection. This index is set to the selectedItem property to clear the selection from this series.

See also QAbstract3DGraph::clearSelection().

### void QScatter3DSeries::setDataProxy(QScatterDataProxy *proxy)

Sets the active data proxy for the series to proxy. The series assumes ownership of any proxy set to it and deletes any previously set proxy when a new one is added. The proxy argument cannot be null or set to another series.

Note: Setter function for property dataProxy.

See also dataProxy().

### void QScatter3DSeries::setSelectedItem(int index)

Selects the item at the index index in the data array of the series. Only one item can be selected at a time.

To clear selection from this series, invalidSelectionIndex() is set as index. If this series is added to a graph, the graph can adjust the selection according to user interaction or if it becomes invalid. Selecting an item on another added series will also clear the selection.

Removing items from or inserting items to the series before the selected item will adjust the selection so that the same item will stay selected.

Note: Setter function for property selectedItem.

See also selectedItem() and QAbstract3DGraph::clearSelection().