- class QBarDataProxy¶
The
QBarDataProxy
class is the data proxy for a 3D bars graph. More…Inherited by:
QItemModelBarDataProxy
Synopsis¶
Properties¶
Methods¶
def
__init__()
def
addRow()
def
addRows()
def
colCount()
def
insertRow()
def
insertRows()
def
itemAt()
def
removeRows()
def
resetArray()
def
rowAt()
def
rowCount()
def
series()
def
setItem()
def
setRow()
def
setRows()
Signals¶
def
arrayReset()
def
itemChanged()
def
rowsAdded()
def
rowsChanged()
def
rowsInserted()
def
rowsRemoved()
def
seriesChanged()
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description¶
A bar data proxy handles adding, inserting, changing, and removing rows of data.
The data array is a list of vectors (rows) of
QBarDataItem
instances. Each row can contain a different number of items or even be null.QBarDataProxy
takes ownership of all QtGraphs::QBarDataRow objects passed to it, whether directly or in a QtGraphs::QBarDataArray container. If bar data row pointers are used to directly modify data after adding the array to the proxy, the appropriate signal must be emitted to update the graph.QBarDataProxy
optionally keeps track of row and column labels, whichQCategory3DAxis
can utilize to show axis labels.The row and column labels are stored in a separate array from the data in the series rather. Row processing methods are available in the proxy and provide alternative versions that do not affect row labels. This enables the option of having row labels that relate to the position of the data in the array rather than the data itself. Since the series holds the data and row and column labels, it is necessary to create a series associated with the proxy before using these functions for them.
See also
Qt Graphs Data Handling with 3D
- class RemoveLabels¶
Added in version 6.8.
Note
Properties can be used directly when
from __feature__ import true_property
is used or via accessor functions otherwise.- property colCountᅟ: int¶
This property holds The number of columns in the array..
- Access functions:
Signal
colCountChanged()
- property rowCountᅟ: int¶
This property holds The number of rows in the array..
- Access functions:
Signal
rowCountChanged()
- property seriesᅟ: QBar3DSeries¶
This property holds The series this proxy is attached to..
- Access functions:
Signal
seriesChanged()
Constructs a bar data proxy with the given
parent
.- addRow(row)¶
- Parameters:
row – .list of QBarDataItem
- Return type:
int
Adds the new row
row
to the end of an array. Existing row labels are not affected.Returns the index of the added row.
- addRow(row, label)
- Parameters:
row – .list of QBarDataItem
label – str
- Return type:
int
Adds a the new row
row
with the labellabel
to the end of an array.Returns the index of the added row.
- addRows(rows)¶
- Parameters:
rows – .list of list of QBarDataItem
- Return type:
int
Adds the new
rows
to the end of an array. Existing row labels are not affected.Returns the index of the first added row.
- addRows(rows, labels)
- Parameters:
rows – .list of list of QBarDataItem
labels – list of strings
- Return type:
int
Adds the new
rows
withlabels
to the end of the array.Returns the index of the first added row.
- arrayReset()¶
This signal is emitted when the data array is reset. If the contents of the whole array are changed without calling
resetArray()
, this signal needs to be emitted to update the graph.- colCount()¶
- Return type:
int
Getter of property
colCountᅟ
.- colCountChanged(count)¶
- Parameters:
count – int
Notification signal of property
colCountᅟ
.- insertRow(rowIndex, row)¶
- Parameters:
rowIndex – int
row – .list of QBarDataItem
Inserts the new row
row
intorowIndex
. IfrowIndex
is equal to the array size, the rows are added to the end of the array. The existing row labels are not affected.Note
The row labels array will be out of sync with the row array after this call if there were labeled rows beyond the inserted row.
- insertRow(rowIndex, row, label)
- Parameters:
rowIndex – int
row – .list of QBarDataItem
label – str
Inserts the new row
row
with the labellabel
intorowIndex
. IfrowIndex
is equal to array size, rows are added to the end of the array.- insertRows(rowIndex, rows)¶
- Parameters:
rowIndex – int
rows – .list of list of QBarDataItem
Inserts new
rows
intorowIndex
. IfrowIndex
is equal to the array size, the rows are added to the end of the array. The existing row labels are not affected.Note
The row labels array will be out of sync with the row array after this call if there were labeled rows beyond the inserted rows.
- insertRows(rowIndex, rows, labels)
- Parameters:
rowIndex – int
rows – .list of list of QBarDataItem
labels – list of strings
Inserts new
rows
withlabels
intorowIndex
. IfrowIndex
is equal to the array size, the rows are added to the end of the array.Returns the reference to the item at the position
position
. The x-value ofposition
indicates the row and the y-value indicates the column. The item is guaranteed to be valid only until the next call that modifies data.- itemAt(rowIndex, columnIndex)
- Parameters:
rowIndex – int
columnIndex – int
- Return type:
Returns the reference to the item at the position specified by
rowIndex
andcolumnIndex
. It is guaranteed to be valid only until the next call that modifies data.- itemChanged(rowIndex, columnIndex)¶
- Parameters:
rowIndex – int
columnIndex – int
This signal is emitted when the item at the position specified by
rowIndex
andcolumnIndex
changes. If the item is changed in the array without callingsetItem()
, this signal needs to be emitted to update the graph.- removeRows(rowIndex, removeCount[, removeLabels=QBarDataProxy.RemoveLabels.No])¶
- Parameters:
rowIndex – int
removeCount – int
removeLabels –
RemoveLabels
Removes the number of rows specified by
removeCount
starting at the positionrowIndex
. Attempting to remove rows past the end of the array does nothing. IfremoveLabels
istrue
, the corresponding row labels are also removed. Otherwise, the row labels are not affected.Note
If
removeLabels
isfalse
, the row labels array will be out of sync with the row array if there are labeled rows beyond the removed rows.- resetArray()¶
Clears the existing array and row and column labels.
- resetArray(newArray)
- Parameters:
newArray – .list of list of QBarDataItem
Takes ownership of the array
newArray
. Clears the existing array if the new array differs from it. If the arrays are the same, this function just triggers thearrayReset()
signal.Passing a null array deletes the old array and creates a new empty array. Row and column labels are not affected.
- resetArray(newArray, rowLabels, columnLabels)
- Parameters:
newArray – .list of list of QBarDataItem
rowLabels – list of strings
columnLabels – list of strings
Takes ownership of the array
newArray
. Clears the existing array if the new array differs from it. If the arrays are the same, this function just triggers thearrayReset()
signal.Passing a null array deletes the old array and creates a new empty array.
The
rowLabels
andcolumnLabels
lists specify the new labels for rows and columns.- rowAt(rowIndex)¶
- Parameters:
rowIndex – int
- Return type:
.list of QBarDataItem
Returns the reference to the row at the position
rowIndex
. It is guaranteed to be valid only until the next call that modifies data.- rowCount()¶
- Return type:
int
Getter of property
rowCountᅟ
.- rowCountChanged(count)¶
- Parameters:
count – int
Notification signal of property
rowCountᅟ
.- rowsAdded(startIndex, count)¶
- Parameters:
startIndex – int
count – int
This signal is emitted when the number of rows specified by
count
is added, starting at the positionstartIndex
. If rows are added to the array without callingaddRow()
oraddRows()
, this signal needs to be emitted to update the graph.- rowsChanged(startIndex, count)¶
- Parameters:
startIndex – int
count – int
This signal is emitted when the number of rows specified by
count
is changed, starting at the positionstartIndex
. If rows are changed in the array without callingsetRow()
orsetRows()
, this signal needs to be emitted to update the graph.- rowsInserted(startIndex, count)¶
- Parameters:
startIndex – int
count – int
This signal is emitted when the number of rows specified by
count
is inserted at the positionstartIndex
.If rows are inserted into the array without calling
insertRow()
orinsertRows()
, this signal needs to be emitted to update the graph.- rowsRemoved(startIndex, count)¶
- Parameters:
startIndex – int
count – int
This signal is emitted when the number of rows specified by
count
is removed, starting at the positionstartIndex
.The index is the current array size if the rows were removed from the end of the array. If rows are removed from the array without calling
removeRows()
, this signal needs to be emitted to update the graph.- series()¶
- Return type:
Getter of property
seriesᅟ
.- seriesChanged(series)¶
- Parameters:
series –
QBar3DSeries
Notification signal of property
seriesᅟ
.- setItem(position, item)¶
- Parameters:
position –
QPoint
item –
QBarDataItem
Changes a single item at the position
position
to the itemitem
. The x-value ofposition
indicates the row and the y-value indicates the column.- setItem(rowIndex, columnIndex, item)
- Parameters:
rowIndex – int
columnIndex – int
item –
QBarDataItem
Changes a single item at the position specified by
rowIndex
andcolumnIndex
to the itemitem
.- setRow(rowIndex, row)¶
- Parameters:
rowIndex – int
row – .list of QBarDataItem
Changes an existing row by replacing the row at the position
rowIndex
with the new row specified byrow
. The new row can be the same as the existing row already stored atrowIndex
. Existing row labels are not affected.- setRow(rowIndex, row, label)
- Parameters:
rowIndex – int
row – .list of QBarDataItem
label – str
Changes an existing row by replacing the row at the position
rowIndex
with the new row specified byrow
. The new row can be the same as the existing row already stored atrowIndex
. Changes the row label tolabel
.- setRows(rowIndex, rows)¶
- Parameters:
rowIndex – int
rows – .list of list of QBarDataItem
Changes existing rows by replacing the rows starting at the position
rowIndex
with the new rows specifies byrows
. Existing row labels are not affected. The rows in therows
array can be the same as the existing rows already stored atrowIndex
.- setRows(rowIndex, rows, labels)
- Parameters:
rowIndex – int
rows – .list of list of QBarDataItem
labels – list of strings
Changes existing rows by replacing the rows starting at the position
rowIndex
with the new rows specifies byrows
. The row labels are changed tolabels
. The rows in therows
array can be the same as the existing rows already stored atrowIndex
.