QScatter3DSeries Class

QScatter3DSeries 类表示三维散点图中的数据序列。更多

Header: #include <QScatter3DSeries>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs
在 QML 中: Scatter3DSeries
继承: QAbstract3DSeries
继承于:

QSpline3DSeries

属性

公共功能

QScatter3DSeries(QObject *parent = nullptr)
QScatter3DSeries(QScatterDataProxy *dataProxy, QObject *parent = nullptr)
virtual ~QScatter3DSeries() override
void clearArray()
QScatterDataArray dataArray() &&
const QScatterDataArray &dataArray() const &
QScatterDataProxy *dataProxy() const
float itemSize() const
qsizetype selectedItem() const
void setDataArray(const QScatterDataArray &newDataArray)
void setDataProxy(QScatterDataProxy *proxy)
void setItemSize(float size)
void setSelectedItem(qsizetype index)

信号

void dataArrayChanged(const QScatterDataArray &array)
void dataProxyChanged(QScatterDataProxy *proxy)
void itemSizeChanged(float size)
void selectedItemChanged(qsizetype index)

静态公共成员

qsizetype invalidSelectionIndex()

详细说明

该类管理特定于系列的可视化元素以及系列数据(通过数据代理)。

关于代理与系列的关系,有几个关键点需要强调。在这种情况下,数据存储在系列中,用户可以通过系列访问数据集。该系列由代理对象控制或表示。因此,代理可用于管理数据上的各种操作并更新实际数据集。不过,要编辑数据集,必须创建与该代理相关联的系列。

如果没有为系列明确设置数据代理,则系列会创建一个默认代理。设置其他代理将破坏现有代理和添加到系列中的所有数据。

QScatter3DSeries 支持以下用于QAbstract3DSeries::setItemLabelFormat() 的格式标记:

@xTitle来自 x 轴的标题
@yTitle来自 y 轴的标题
@zTitle来自 Z 轴的标题
@xLabel使用 x 轴格式的项目值。更多信息,请参阅QValue3DAxis::labelFormat
@yLabel使用 Y 轴格式的项目值。更多信息,请参阅QValue3DAxis::labelFormat
@zLabel使用 Z 轴格式的项目值。更多信息,请参阅QValue3DAxis::labelFormat
@seriesName系列名称

系列名称

proxy->setItemLabelFormat(QStringLiteral("@yTitle for (@xLabel, @zLabel): %.1f"));

另请参阅 Qt Graphs 3D 数据处理

属性文档

dataArray : QScatterDataArray

系列的数据数组。

持有数据数组的引用。

dataArrayChanged 信号会在设置数据数组时发出,除非newDataArray 与前一个相同。

注意: 在对数据数组做任何操作之前,必须为相关代理创建一个系列。

访问函数:

const QScatterDataArray &dataArray() const &
QScatterDataArray dataArray() &&
void setDataArray(const QScatterDataArray &newDataArray)

Notifier 信号:

void dataArrayChanged(const QScatterDataArray &array)

另请参见 clearArray().

dataProxy : QScatterDataProxy*

该属性用于保存活动数据代理。

将序列的活动数据代理设置为proxy 。该序列拥有任何设置给它的代理的所有权,并在添加新代理时删除任何以前设置的代理。proxy 参数不能为空或设置为其他系列。

访问功能:

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

通知信号:

void dataProxyChanged(QScatterDataProxy *proxy)

itemSize : float

系列的项目尺寸。

大小必须介于0.0f1.0f 之间。将大小设置为0.0f 会导致项目大小根据图表中所有系列的项目总数自动缩放。

预设默认值为0.0f

访问功能:

float itemSize() const
void setItemSize(float size)

通知信号:

void itemSizeChanged(float size)

selectedItem : qsizetype

该属性用于保存在系列中被选中的项目。

选择系列数据数组中索引index 处的项目。一次只能选择一个项目。

要清除该系列的选中项,invalidSelectionIndex() 设置为index 。如果将此系列添加到图表中,图表会根据用户交互或选择无效的情况调整选择。选择另一个已添加系列中的项目也会清除选择。

在所选项目之前从系列中删除项目或在系列中插入项目,都会调整选择,使同一项目保持选中状态。

访问功能:

qsizetype selectedItem() const
void setSelectedItem(qsizetype index)

通知信号:

void selectedItemChanged(qsizetype index)

另请参阅 Q3DGraphsWidgetItem::clearSelection().

成员函数文档

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

使用父序列parent 构建散点 3D 序列。

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

用数据代理dataProxy 和父数据parent 构建散点三维序列。

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

删除散点 3D 系列。

void QScatter3DSeries::clearArray()

清除数据数组。

[static] qsizetype QScatter3DSeries::invalidSelectionIndex()

返回无效的选择索引。将此索引设置为selectedItem 属性,可清除此系列中的选择。

另请参阅 Q3DGraphsWidgetItem::clearSelection().

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.