- Qt 6.10
- Qt Graphs
- QML Types
- QtGraphs
- Scatter3DSeries
- Qt Graphs | Commercial or GPLv3

# Scatter3DSeries QML Type

Represents a data series in a 3D scatter graph. More...

Import Statement: | `import QtGraphs`
In C++: | QScatter3DSeries
Inherits: | Abstract3DSeries
Inherited By: | Spline3DSeries

- List of all members, including inherited members
- Scatter3DSeries is part of Qt Graphs QML Types for 3D.

## Properties

- baseColor : color
- baseGradient : Gradient
- colorStyle : GraphsTheme.ColorStyle
- dataArray : ScatterDataArray
- dataProxy : ScatterDataProxy
- invalidSelectionIndex : qsizetype
- itemLabel : string
- itemLabelFormat : string
- itemLabelVisible : bool
- itemSize : real
- lightingMode : Abstract3DSeries.LightingMode `(since 6.10)`
- mesh : Abstract3DSeries.Mesh
- meshRotation : quaternion
- meshSmooth : bool
- multiHighlightColor : color
- multiHighlightGradient : Gradient
- name : string
- selectedItem : qsizetype
- singleHighlightColor : color
- singleHighlightGradient : Gradient
- type : Abstract3DSeries.SeriesType
- userDefinedMesh : string
- visible : bool

## Signals

- baseColorChanged(color color)
- baseGradientChanged(Gradient gradient)
- colorStyleChanged(GraphsTheme.ColorStyle style)
- dataArrayChanged(ScatterDataArray array)
- dataProxyChanged(ScatterDataProxy proxy)
- itemLabelChanged(string label)
- itemLabelFormatChanged(string format)
- itemLabelVisibilityChanged(bool visible)
- itemSizeChanged(float size)
- lightingModeChanged(Abstract3DSeries.LightingMode lightingMode) `(since 6.10)`
- meshChanged(Abstract3DSeries.Mesh mesh)
- meshRotationChanged(quaternion rotation)
- meshSmoothChanged(bool enabled)
- multiHighlightColorChanged(color color)
- multiHighlightGradientChanged(Gradient gradient)
- nameChanged(string name)
- selectedItemChanged(qsizetype index)
- singleHighlightColorChanged(color color)
- singleHighlightGradientChanged(Gradient gradient)
- splineColorChanged(color color)
- splineKnottingChanged(real knotting)
- splineLoopingChanged(bool looping)
- splineResolutionChanged(int resolution)
- splineTensionChanged(real tension)
- splineVisibilityChanged(bool visible)
- userDefinedMeshChanged(string fileName)
- visibilityChanged(bool visible)

## Methods

- void setMeshAxisAndAngle(vector3d axis, real angle)

## Detailed Description

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

Scatter3DSeries supports the following format tags for itemLabelFormat:

@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 labelFormat.
@yLabel | Item value formatted using the format of the y-axis. For more information, see labelFormat.
@zLabel | Item value formatted using the format of the z-axis. For more information, see labelFormat.
@seriesName | Name of the series

For a more complete description, see QScatter3DSeries.

See also Qt Graphs Data Handling with 3D.

## Property Documentation

baseColor : color

The base color of the series.

See also colorStyle and GraphsTheme.seriesColors.

baseGradient : Gradient

The base gradient of the series.

See also colorStyle.

colorStyle : GraphsTheme.ColorStyle

The color style for the series.

See also GraphsTheme.ColorStyle.

dataArray : ScatterDataArray

Holds the reference to the data array.

dataArrayChanged signal is emitted when data array is set, unless newDataArray is identical to the previous one.

Note: Before doing anything regarding the data array, a series must be created for the relevant proxy.

dataProxy : ScatterDataProxy

Sets the active data 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 cannot be null or set to another series.

invalidSelectionIndex : qsizetype

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

See also GraphsItem3D::clearSelection().

itemLabel : string `[read-only]`

The formatted item label. If there is no selected item or the selected item is not visible, returns an empty string.

See also itemLabelFormat.

itemLabelFormat : string

The label format for data items in this series. This format is used for single item labels, for example, when an item is selected. How the format is interpreted depends on series type.

See also Bar3DSeries, Scatter3DSeries, and Surface3DSeries.

itemLabelVisible : bool

If `true`, item labels are drawn as floating labels in the graph. Otherwise, item labels are not drawn. To show the item label in an external control, this property is set to `false`. Defaults to `true`.

See also itemLabelFormat and itemLabel.

itemSize : real

Sets the item size for the series. The size must be between `0.0` and `1.0`. Setting the size to `0.0` 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.0`.

lightingMode : Abstract3DSeries.LightingMode `[since 6.10]`

The lighting mode of the items in the series. The default value is QAbstract3DSeries::LightingMode::Shaded

This property was introduced in Qt 6.10.

See also QAbstract3DSeries::LightingMode.

mesh : Abstract3DSeries.Mesh

The mesh of the items in the series, or the selection pointer in case of Surface3DSeries. If the mesh is Abstract3DSeries.Mesh.UserDefined, then the userDefinedMesh property must also be set for items to render properly. The default value depends on the graph type.

See also QAbstract3DSeries::Mesh.

meshRotation : quaternion

The mesh rotation that is applied to all items of the series. The rotation should be a normalized quaternion. For those series types that support item specific rotation, the rotations are multiplied together. Bar3DSeries ignores any rotation that is not around the y-axis. Surface3DSeries applies the rotation only to the selection pointer. Defaults to no rotation.

meshSmooth : bool

If `true`, smooth versions of predefined meshes set via the mesh property are used. This property does not affect custom meshes used when the mesh is set to Abstract3DSeries.Mesh.UserDefined. Defaults to `false`.

multiHighlightColor : color

The multiple item highlight color of the series.

See also colorStyle and GraphsTheme.multiHighlightColor.

multiHighlightGradient : Gradient

The multiple item highlight gradient of the series.

See also colorStyle and GraphsTheme.multiHighlightGradient.

name : string

The series name. It can be used in item label format with the tag `@seriesName`.

See also itemLabelFormat.

selectedItem : qsizetype

The item that is selected at the index in the data array of the series. Only one item can be selected at a time. To clear the selection from this series, the invalidSelectionIndex is set as the 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 into the series before the selected item will adjust the selection so that the same item will stay selected.

See also GraphsItem3D::clearSelection().

singleHighlightColor : color

The single item highlight color of the series.

See also colorStyle and GraphsTheme.singleHighlightColor.

singleHighlightGradient : Gradient

The single item highlight gradient of the series.

See also colorStyle and GraphsTheme.singleHighlightGradient.

type : Abstract3DSeries.SeriesType `[read-only]`

The type of the series. One of the QAbstract3DSeries::SeriesType values.

userDefinedMesh : string

The filename for a user defined custom mesh for objects that is used when mesh is Abstract3DSeries.Mesh.UserDefined.

Note: The file needs to be in the QtQuick3D mesh format. Use the `balsam` conversion tool to create a mesh from other 3D model formats.

visible : bool

The visibility of the series. If `false`, the series is not rendered.

## Signal Documentation

baseColorChanged(color color)

This signal is emitted when baseColor changes to color.

Note: The corresponding handler is `onBaseColorChanged`.

baseGradientChanged(Gradient gradient)

This signal is emitted when baseGradient changes to gradient.

Note: The corresponding handler is `onBaseGradientChanged`.

colorStyleChanged(GraphsTheme.ColorStyle style)

This signal is emitted when colorStyle changes to style.

Note: The corresponding handler is `onColorStyleChanged`.

dataArrayChanged(ScatterDataArray array)

This signal is emitted when dataArray changes to array.

Note: The corresponding handler is `onDataArrayChanged`.

dataProxyChanged(ScatterDataProxy proxy)

This signal is emitted when dataProxy changes to proxy.

Note: The corresponding handler is `onDataProxyChanged`.

itemLabelChanged(string label)

This signal is emitted when itemLabel changes to label.

Note: The corresponding handler is `onItemLabelChanged`.

itemLabelFormatChanged(string format)

This signal is emitted when itemLabelFormat changes to format.

Note: The corresponding handler is `onItemLabelFormatChanged`.

itemLabelVisibilityChanged(bool visible)

This signal is emitted when itemLabelVisibility changes to visible.

Note: The corresponding handler is `onItemLabelVisibilityChanged`.

itemSizeChanged(float size)

This signal is emitted when itemSize changes to size.

Note: The corresponding handler is `onItemSizeChanged`.

`[since 6.10]` lightingModeChanged(Abstract3DSeries.LightingMode lightingMode)

This signal is emitted when lightingMode changes to lightingMode.

Note: The corresponding handler is `onLightingModeChanged`.

This signal was introduced in Qt 6.10.

meshChanged(Abstract3DSeries.Mesh mesh)

This signal is emitted when mesh changes to mesh.

Note: The corresponding handler is `onMeshChanged`.

meshRotationChanged(quaternion rotation)

This signal is emitted when meshRotation changes to rotation.

Note: The corresponding handler is `onMeshRotationChanged`.

meshSmoothChanged(bool enabled)

This signal is emitted when meshSmooth changes to enabled.

Note: The corresponding handler is `onMeshSmoothChanged`.

multiHighlightColorChanged(color color)

This signal is emitted when multiHighlightColor changes to color.

Note: The corresponding handler is `onMultiHighlightColorChanged`.

multiHighlightGradientChanged(Gradient gradient)

This signal is emitted when multiHighlightGradient changes to gradient.

Note: The corresponding handler is `onMultiHighlightGradientChanged`.

nameChanged(string name)

This signal is emitted when name changes to name.

Note: The corresponding handler is `onNameChanged`.

selectedItemChanged(qsizetype index)

This signal is emitted when selectedItem changes to index.

Note: The corresponding handler is `onSelectedItemChanged`.

singleHighlightColorChanged(color color)

This signal is emitted when singleHighlightColor changes to color.

Note: The corresponding handler is `onSingleHighlightColorChanged`.

singleHighlightGradientChanged(Gradient gradient)

This signal is emitted when singleHighlightGradient changes to gradient.

Note: The corresponding handler is `onSingleHighlightGradientChanged`.

splineColorChanged(color color)

This signal is emitted when splineColor changes to color.

Note: The corresponding handler is `onSplineColorChanged`.

splineKnottingChanged(real knotting)

This signal is emitted when splineKnotting changes to knotting.

Note: The corresponding handler is `onSplineKnottingChanged`.

splineLoopingChanged(bool looping)

This signal is emitted when splineLooping changes to looping.

Note: The corresponding handler is `onSplineLoopingChanged`.

splineResolutionChanged(int resolution)

This signal is emitted when splineResolution changes to resolution.

Note: The corresponding handler is `onSplineResolutionChanged`.

splineTensionChanged(real tension)

This signal is emitted when splineTension changes to tension.

Note: The corresponding handler is `onSplineTensionChanged`.

splineVisibilityChanged(bool visible)

This signal is emitted when splineVisible changes to visible.

Note: The corresponding handler is `onSplineVisibilityChanged`.

userDefinedMeshChanged(string fileName)

This signal is emitted when userDefinedMesh changes to fileName.

Note: The corresponding handler is `onUserDefinedMeshChanged`.

visibilityChanged(bool visible)

This signal is emitted when the series visibility changes to visible.

Note: The corresponding handler is `onVisibilityChanged`.

## Method Documentation

void setMeshAxisAndAngle(vector3d axis, real angle)

A convenience function to construct a mesh rotation quaternion from axis and angle.

See also meshRotation.