PySide6.QtGraphs.QItemModelScatterDataProxy

class QItemModelScatterDataProxy

用于在项目模型中展示数据的代理类,使用Q3DScatterWidgetItem更多

PySide6.QtGraphs.QItemModelScatterDataProxy 的继承图

概要

属性

方法

信号

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

警告

本节包含从C++自动翻译到Python的代码片段,可能包含错误。

QItemModelScatterDataProxy 允许你使用 QAbstractItemModel 派生模型作为 Q3DScatterWidgetItem 的数据源。它将 QAbstractItemModel 的角色映射到 Q3DScatterWidgetItem 点的 XYZ 值。

每当映射或模型发生变化时,数据都会异步解析。当数据解析完成时,会发出arrayReset()。然而,在模型初始化之后的插入、删除和单个数据项更改是同步解析的,除非同一帧中还包含导致整个模型重新解析的更改。

映射忽略QAbstractItemModel的行和列,并平等对待所有项目。它要求模型为数据项提供可以映射到散点图的X、Y和Z值的角色。

例如,假设您有一个自定义的QAbstractItemModel,用于存储对材料样本进行的各种测量,提供诸如“密度”、“硬度”和“导电性”等角色的数据。您可以使用此代理在散点图上可视化这些属性:

# Map "density" value to X-axis, "hardness" to Y-axis and "conductivity" to Z-axis.
proxy = QItemModelScatterDataProxy(customModel,()
                                                                   "density",
                                                                   "hardness",
                                                                   "conductivity")

如果模型的字段不包含您所需的确切格式的数据,您可以为每个角色指定一个搜索模式正则表达式和一个替换规则,以获取所需格式的值。有关如何使用正则表达式进行替换的更多信息,请参阅QString::replace(const QRegularExpression ℞, const QString &after)函数文档。请注意,使用正则表达式会影响性能,因此在不需要进行搜索和替换即可获得所需值的情况下,使用项模型更为高效。

例如,关于将搜索模式与角色结合使用的示例,请参见ItemModelBarDataProxy简单条形图中的用法。

另请参阅

使用3D处理Qt图形数据

注意

当使用from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。

property itemModelᅟ: QAbstractItemModel

此属性保存用作3D散点系列数据源的项模型。

Access functions:
property rotationRoleᅟ: str

此属性保存要映射到项目旋转的项目模型角色。

模型可以为旋转提供值,该值可以是直接可转换为QQuaternion的变体,也可以是以下字符串表示之一:"scalar,x,y,z""@angle,x,y,z"。第一种将直接使用给定的值构造四元数,第二种将使用QQuaternion::fromAxisAndAngle()方法构造四元数。

Access functions:
property rotationRolePatternᅟ: QRegularExpression

此属性保存是否在将旋转角色映射的值用作项目旋转之前对其进行搜索和替换。

此属性指定用于查找要替换的映射值部分的正则表达式,而rotationRoleReplace属性包含替换字符串。

Access functions:
property rotationRoleReplaceᅟ: str

此属性保存与旋转角色模式一起使用的替换内容。

默认为空字符串。有关如何使用正则表达式进行搜索和替换的更多信息,请参阅 QString::replace(const QRegularExpression ℞, const QString &after) 函数文档。

Access functions:
property xPosRoleᅟ: str

此属性保存要映射到X位置的项模型角色。

Access functions:
property xPosRolePatternᅟ: QRegularExpression

此属性保存是否在将x位置角色映射的值用作项目位置值之前进行搜索和替换。

此属性指定用于查找要替换的映射值部分的正则表达式,而xPosRoleReplace属性包含替换字符串。

另请参阅

xPosRole xPosRoleReplace

Access functions:
property xPosRoleReplaceᅟ: str

此属性保存与x位置角色模式一起使用的替换内容。

默认为空字符串。有关如何使用正则表达式进行搜索和替换的更多信息,请参阅 QString::replace(const QRegularExpression ℞, const QString &after) 函数文档。

另请参阅

xPosRole xPosRolePattern

Access functions:
property yPosRoleᅟ: str

此属性保存要映射到Y位置的项模型角色。

Access functions:
property yPosRolePatternᅟ: QRegularExpression

此属性保存是否在将y位置角色映射的值用作项目位置值之前对其进行搜索和替换。

此属性指定用于查找要替换的映射值部分的正则表达式,而yPosRoleReplace属性包含替换字符串。

另请参阅

yPosRole yPosRoleReplace

Access functions:
property yPosRoleReplaceᅟ: str

此属性保存与y位置角色模式一起使用的替换内容。

默认为空字符串。有关如何使用正则表达式进行搜索和替换的更多信息,请参阅 QString::replace(const QRegularExpression ℞, const QString &after) 函数文档。

另请参阅

yPosRole yPosRolePattern

Access functions:
property zPosRoleᅟ: str

此属性保存要映射到Z位置的项模型角色。

Access functions:
property zPosRolePatternᅟ: QRegularExpression

此属性保存是否在将z位置角色映射的值用作项目位置值之前对其进行搜索和替换。

此属性指定用于查找要替换的映射值部分的正则表达式,而zPosRoleReplace属性包含替换字符串。

另请参阅

zPosRole zPosRoleReplace

Access functions:
property zPosRoleReplaceᅟ: str

此属性保存与z位置角色模式一起使用的替换内容。

默认为空字符串。有关如何使用正则表达式进行搜索和替换的更多信息,请参阅 QString::replace(const QRegularExpression ℞, const QString &after) 函数文档。

另请参阅

zPosRole zPosRolePattern

Access functions:
__init__([parent=None])
Parameters:

父对象QObject

使用可选的parent构造QItemModelScatterDataProxy

__init__(itemModel[, parent=None])
Parameters:

使用itemModel和一个可选的parent构造QItemModelScatterDataProxy。代理不会获取itemModel的所有权,因为通常项目模型由其他控件拥有。

__init__(itemModel, xPosRole, yPosRole, zPosRole[, parent=None])
Parameters:

使用itemModel和一个可选的parent构造QItemModelScatterDataProxy。代理不会获取itemModel的所有权,因为项目模型通常由其他控件拥有。xPosRole属性设置为xPosRoleyPosRole属性设置为yPosRolezPosRole属性设置为zPosRole

__init__(itemModel, xPosRole, yPosRole, zPosRole, rotationRole[, parent=None])
Parameters:
  • itemModelQAbstractItemModel

  • xPosRole – str

  • yPosRole – str

  • zPosRole – str

  • rotationRole – str

  • parentQObject

使用itemModel和一个可选的parent构造QItemModelScatterDataProxy。代理不会获取itemModel的所有权,因为项目模型通常由其他控件拥有。xPosRole属性设置为xPosRoleyPosRole属性设置为yPosRolezPosRole属性设置为zPosRolerotationRole属性设置为rotationRole

itemModel()
Return type:

QAbstractItemModel

另请参阅

setItemModel()

属性 itemModelᅟ 的获取器。

itemModelChanged(itemModel)
Parameters:

itemModelQAbstractItemModel

属性 itemModelᅟ 的通知信号。

remap(xPosRole, yPosRole, zPosRole, rotationRole)
Parameters:
  • xPosRole – str

  • yPosRole – str

  • zPosRole – str

  • rotationRole – str

更改 xPosRole, yPosRole, zPosRole, 和 rotationRole 的映射。

rotationRole()
Return type:

字符串

另请参阅

setRotationRole()

属性 rotationRoleᅟ 的获取器。

rotationRoleChanged(role)
Parameters:

role – str

属性 rotationRoleᅟ 的通知信号。

rotationRolePattern()
Return type:

QRegularExpression

属性 rotationRolePatternᅟ 的获取器。

rotationRolePatternChanged(pattern)
Parameters:

patternQRegularExpression

属性 rotationRolePatternᅟ 的通知信号。

rotationRoleReplace()
Return type:

字符串

属性 rotationRoleReplaceᅟ 的获取器。

rotationRoleReplaceChanged(replace)
Parameters:

replace – 字符串

属性 rotationRoleReplaceᅟ 的通知信号。

setItemModel(itemModel)
Parameters:

itemModelQAbstractItemModel

itemModel 设置为 Q3DScatterWidgetItem 的项目模型。不拥有模型的所有权,但会连接到模型以监听变化。

另请参阅

itemModel()

属性 itemModelᅟ 的设置器。

setRotationRole(role)
Parameters:

role – str

另请参阅

rotationRole()

属性 rotationRoleᅟ 的设置器。

setRotationRolePattern(pattern)
Parameters:

patternQRegularExpression

另请参阅

rotationRolePattern()

属性 rotationRolePatternᅟ 的设置器。

setRotationRoleReplace(replace)
Parameters:

replace – 字符串

另请参阅

rotationRoleReplace()

属性 rotationRoleReplaceᅟ 的设置器。

setXPosRole(role)
Parameters:

role – str

另请参阅

xPosRole()

属性 xPosRoleᅟ 的设置器。

setXPosRolePattern(pattern)
Parameters:

patternQRegularExpression

另请参阅

xPosRolePattern()

属性 xPosRolePatternᅟ 的设置器。

setXPosRoleReplace(replace)
Parameters:

replace – 字符串

另请参阅

xPosRoleReplace()

属性 xPosRoleReplaceᅟ 的设置器。

setYPosRole(role)
Parameters:

role – str

另请参阅

yPosRole()

属性 yPosRoleᅟ 的设置器。

setYPosRolePattern(pattern)
Parameters:

patternQRegularExpression

另请参阅

yPosRolePattern()

属性 yPosRolePatternᅟ 的设置器。

setYPosRoleReplace(replace)
Parameters:

replace – 字符串

另请参阅

yPosRoleReplace()

属性 yPosRoleReplaceᅟ 的设置器。

setZPosRole(role)
Parameters:

role – str

另请参阅

zPosRole()

属性 zPosRoleᅟ 的设置器。

setZPosRolePattern(pattern)
Parameters:

patternQRegularExpression

另请参阅

zPosRolePattern()

属性 zPosRolePatternᅟ 的设置器。

setZPosRoleReplace(replace)
Parameters:

replace – 字符串

另请参阅

zPosRoleReplace()

属性 zPosRoleReplaceᅟ 的设置器。

xPosRole()
Return type:

字符串

另请参阅

setXPosRole()

属性 xPosRoleᅟ 的获取器。

xPosRoleChanged(role)
Parameters:

role – str

属性 xPosRoleᅟ 的通知信号。

xPosRolePattern()
Return type:

QRegularExpression

另请参阅

setXPosRolePattern()

属性 xPosRolePatternᅟ 的获取器。

xPosRolePatternChanged(pattern)
Parameters:

patternQRegularExpression

属性 xPosRolePatternᅟ 的通知信号。

xPosRoleReplace()
Return type:

字符串

另请参阅

setXPosRoleReplace()

属性 xPosRoleReplaceᅟ 的获取器。

xPosRoleReplaceChanged(replace)
Parameters:

replace – 字符串

属性 xPosRoleReplaceᅟ 的通知信号。

yPosRole()
Return type:

字符串

另请参阅

setYPosRole()

属性 yPosRoleᅟ 的获取器。

yPosRoleChanged(role)
Parameters:

role – str

属性 yPosRoleᅟ 的通知信号。

yPosRolePattern()
Return type:

QRegularExpression

另请参阅

setYPosRolePattern()

属性 yPosRolePatternᅟ 的获取器。

yPosRolePatternChanged(pattern)
Parameters:

patternQRegularExpression

属性 yPosRolePatternᅟ 的通知信号。

yPosRoleReplace()
Return type:

字符串

另请参阅

setYPosRoleReplace()

属性 yPosRoleReplaceᅟ 的获取器。

yPosRoleReplaceChanged(replace)
Parameters:

replace – 字符串

属性 yPosRoleReplaceᅟ 的通知信号。

zPosRole()
Return type:

字符串

另请参阅

setZPosRole()

属性 zPosRoleᅟ 的获取器。

zPosRoleChanged(role)
Parameters:

role – str

属性 zPosRoleᅟ 的通知信号。

zPosRolePattern()
Return type:

QRegularExpression

另请参阅

setZPosRolePattern()

属性 zPosRolePatternᅟ 的获取器。

zPosRolePatternChanged(pattern)
Parameters:

patternQRegularExpression

属性 zPosRolePatternᅟ 的通知信号。

zPosRoleReplace()
Return type:

字符串

另请参阅

setZPosRoleReplace()

属性 zPosRoleReplaceᅟ 的获取器。

zPosRoleReplaceChanged(replace)
Parameters:

replace – 字符串

属性 zPosRoleReplaceᅟ 的通知信号。