QItemModelScatterDataProxy¶
Proxy class for presenting data in item models with Q3DScatter
. More…
Synopsis¶
Functions¶
def
itemModel
()def
remap
(xPosRole, yPosRole, zPosRole, rotationRole)def
rotationRole
()def
rotationRolePattern
()def
rotationRoleReplace
()def
setItemModel
(itemModel)def
setRotationRole
(role)def
setRotationRolePattern
(pattern)def
setRotationRoleReplace
(replace)def
setXPosRole
(role)def
setXPosRolePattern
(pattern)def
setXPosRoleReplace
(replace)def
setYPosRole
(role)def
setYPosRolePattern
(pattern)def
setYPosRoleReplace
(replace)def
setZPosRole
(role)def
setZPosRolePattern
(pattern)def
setZPosRoleReplace
(replace)def
xPosRole
()def
xPosRolePattern
()def
xPosRoleReplace
()def
yPosRole
()def
yPosRolePattern
()def
yPosRoleReplace
()def
zPosRole
()def
zPosRolePattern
()def
zPosRoleReplace
()
Signals¶
def
itemModelChanged
(itemModel)def
rotationRoleChanged
(role)def
rotationRolePatternChanged
(pattern)def
rotationRoleReplaceChanged
(replace)def
xPosRoleChanged
(role)def
xPosRolePatternChanged
(pattern)def
xPosRoleReplaceChanged
(replace)def
yPosRoleChanged
(role)def
yPosRolePatternChanged
(pattern)def
yPosRoleReplaceChanged
(replace)def
zPosRoleChanged
(role)def
zPosRolePatternChanged
(pattern)def
zPosRoleReplaceChanged
(replace)
Detailed Description¶
QItemModelScatterDataProxy
allows you to use QAbstractItemModel
derived models as a data source for Q3DScatter
. It maps roles of QAbstractItemModel
to the XYZ-values of Q3DScatter
points.
The data is resolved asynchronously whenever the mapping or the model changes. arrayReset()
is emitted when the data has been resolved. However, inserts, removes, and single data item changes after the model initialization are resolved synchronously, unless the same frame also contains a change that causes the whole model to be resolved.
Mapping ignores rows and columns of the QAbstractItemModel
and treats all items equally. It requires the model to provide roles for the data items that can be mapped to X, Y, and Z-values for the scatter points.
For example, assume that you have a custom QAbstractItemModel
for storing various measurements done on material samples, providing data for roles such as “density”, “hardness”, and “conductivity”. You could visualize these properties on a scatter graph using this proxy:
# Map "density" value to X-axis, "hardness" to Y-axis and "conductivity" to Z-axis. proxy = QItemModelScatterDataProxy(customModel,() QStringLiteral("density"), QStringLiteral("hardness"), QStringLiteral("conductivity"))
If the fields of the model do not contain the data in the exact format you need, you can specify a search pattern regular expression and a replace rule for each role to get the value in a format you need. For more information how the replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation. Note that using regular expressions has an impact on the performance, so it’s more efficient to utilize item models where doing search and replace is not necessary to get the desired values.
For example about using the search patterns in conjunction with the roles, see ItemModelBarDataProxy usage in Qt Quick 2 Bars Example .
See also
- class PySide6.QtDataVisualization.QItemModelScatterDataProxy(itemModel[, parent=None])¶
PySide6.QtDataVisualization.QItemModelScatterDataProxy(itemModel, xPosRole, yPosRole, zPosRole[, parent=None])
PySide6.QtDataVisualization.QItemModelScatterDataProxy(itemModel, xPosRole, yPosRole, zPosRole, rotationRole[, parent=None])
PySide6.QtDataVisualization.QItemModelScatterDataProxy([parent=None])
- Parameters
yPosRole – str
rotationRole – str
zPosRole – str
xPosRole – str
itemModel –
PySide6.QtCore.QAbstractItemModel
parent –
PySide6.QtCore.QObject
Constructs QItemModelScatterDataProxy
with itemModel
and optional parent
. Proxy doesn’t take ownership of the itemModel
, as typically item models are owned by other controls.
Constructs QItemModelScatterDataProxy
with itemModel
and optional parent
. Proxy doesn’t take ownership of the itemModel
, as typically item models are owned by other controls. The xPosRole
property is set to xPosRole
, yPosRole
property to yPosRole
, and zPosRole
property to zPosRole
.
Constructs QItemModelScatterDataProxy
with itemModel
and optional parent
. Proxy doesn’t take ownership of the itemModel
, as typically item models are owned by other controls. The xPosRole
property is set to xPosRole
, yPosRole
property to yPosRole
, zPosRole
property to zPosRole
, and rotationRole
property to rotationRole
.
Constructs QItemModelScatterDataProxy
with optional parent
.
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.itemModel()¶
- Return type
This property holds The item model to use as a data source for a 3D scatter series..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.itemModelChanged(itemModel)¶
- Parameters
itemModel –
PySide6.QtCore.QAbstractItemModel
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.remap(xPosRole, yPosRole, zPosRole, rotationRole)¶
- Parameters
xPosRole – str
yPosRole – str
zPosRole – str
rotationRole – str
Changes xPosRole
, yPosRole
, zPosRole
, and rotationRole
mapping.
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRole()¶
- Return type
str
This property holds The item model role to map into item rotation..
The model may supply the value for rotation as either variant that is directly convertible to QQuaternion
, or as one of the string representations: "scalar,x,y,z"
or "@angle,x,y,z"
. The first will construct the quaternion directly with given values, and the second one will construct the quaternion using fromAxisAndAngle()
method.
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRoleChanged(role)¶
- Parameters
role – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRolePattern()¶
- Return type
This property holds Whether a search and replace is done on the value mapped by the rotation role before it is used as item rotation..
This property specifies the regular expression to find the portion of the mapped value to replace and rotationRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRolePatternChanged(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRoleReplace()¶
- Return type
str
This property holds The replace content to be used in conjunction with the rotation role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.rotationRoleReplaceChanged(replace)¶
- Parameters
replace – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setItemModel(itemModel)¶
- Parameters
itemModel –
PySide6.QtCore.QAbstractItemModel
This property holds The item model to use as a data source for a 3D scatter series..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setRotationRole(role)¶
- Parameters
role – str
This property holds The item model role to map into item rotation..
The model may supply the value for rotation as either variant that is directly convertible to QQuaternion
, or as one of the string representations: "scalar,x,y,z"
or "@angle,x,y,z"
. The first will construct the quaternion directly with given values, and the second one will construct the quaternion using fromAxisAndAngle()
method.
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setRotationRolePattern(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
This property holds Whether a search and replace is done on the value mapped by the rotation role before it is used as item rotation..
This property specifies the regular expression to find the portion of the mapped value to replace and rotationRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setRotationRoleReplace(replace)¶
- Parameters
replace – str
This property holds The replace content to be used in conjunction with the rotation role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setXPosRole(role)¶
- Parameters
role – str
This property holds The item model role to map into the X position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setXPosRolePattern(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
This property holds Whether search and replace is done on the value mapped by the x position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and xPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setXPosRoleReplace(replace)¶
- Parameters
replace – str
This property holds The replace content to be used in conjunction with the x position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setYPosRole(role)¶
- Parameters
role – str
This property holds The item model role to map into the Y position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setYPosRolePattern(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
This property holds Whether a search and replace is done on the value mapped by the y position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and yPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setYPosRoleReplace(replace)¶
- Parameters
replace – str
This property holds The replace content to be used in conjunction with the y position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setZPosRole(role)¶
- Parameters
role – str
This property holds The item model role to map into the Z position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setZPosRolePattern(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
This property holds Whether a search and replace is done on the value mapped by the z position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and zPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.setZPosRoleReplace(replace)¶
- Parameters
replace – str
This property holds The replace content to be used in conjunction with the z position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRole()¶
- Return type
str
This property holds The item model role to map into the X position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRoleChanged(role)¶
- Parameters
role – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRolePattern()¶
- Return type
This property holds Whether search and replace is done on the value mapped by the x position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and xPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRolePatternChanged(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRoleReplace()¶
- Return type
str
This property holds The replace content to be used in conjunction with the x position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.xPosRoleReplaceChanged(replace)¶
- Parameters
replace – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRole()¶
- Return type
str
This property holds The item model role to map into the Y position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRoleChanged(role)¶
- Parameters
role – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRolePattern()¶
- Return type
This property holds Whether a search and replace is done on the value mapped by the y position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and yPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRolePatternChanged(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRoleReplace()¶
- Return type
str
This property holds The replace content to be used in conjunction with the y position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.yPosRoleReplaceChanged(replace)¶
- Parameters
replace – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRole()¶
- Return type
str
This property holds The item model role to map into the Z position..
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRoleChanged(role)¶
- Parameters
role – str
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRolePattern()¶
- Return type
This property holds Whether a search and replace is done on the value mapped by the z position role before it is used as an item position value..
This property specifies the regular expression to find the portion of the mapped value to replace and zPosRoleReplace
property contains the replacement string.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRolePatternChanged(pattern)¶
- Parameters
pattern –
PySide6.QtCore.QRegularExpression
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRoleReplace()¶
- Return type
str
This property holds The replace content to be used in conjunction with the z position role pattern..
Defaults to an empty string. For more information on how the search and replace using regular expressions works, see replace
(const QRegularExpression
&rx, const QString
&after) function documentation.
See also
- PySide6.QtDataVisualization.QItemModelScatterDataProxy.zPosRoleReplaceChanged(replace)¶
- Parameters
replace – str
© 2022 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.