QAbstractBarSeries 类
QAbstractBarSeries 类是所有条形图系列类的抽象基类。 更多...
头文件 | #include <QAbstractBarSeries> |
由以下类实例化 | AbstractBarSeries |
继承自 | QAbstractSeries |
继承 | QBarSeries、QHorizontalBarSeries、QHorizontalPercentBarSeries、QHorizontalStackedBarSeries、QPercentBarSeries 和 QStackedBarSeries |
公共类型
枚举 | LabelsPosition { LabelsCenter, LabelsInsideEnd, LabelsInsideBase, LabelsOutsideEnd } |
属性
|
|
公共函数
虚拟 | ~QAbstractBarSeries() |
bool | append(QBarSet *set) |
bool | append(const QList<QBarSet *> &sets) |
QList<QBarSet *> | barSets() const |
qreal | barWidth() const |
void | clear() |
int | count() const |
bool | insert(int index, QBarSet *set) |
bool | isLabelsVisible() const |
qreal | labelsAngle() const |
QString | labelsFormat() const |
QAbstractBarSeries::LabelsPosition | labelsPosition() const |
int | labelsPrecision() const |
bool | remove(QBarSet *set) |
void | setBarWidth(qreal width) |
void | setLabelsAngle(qreal angle) |
void | setLabelsFormat(const QString &format) |
void | setLabelsPosition(QAbstractBarSeries::LabelsPosition position) |
void | 设置标签精度(int precision) |
void | 设置标签可见(bool visible = true) |
bool | 取用(QBarSet *set) |
信号
void | 条形集合添加(const QList |
void | 条形集合移除(const QList |
void | 点击(int index, QBarSet *barset) |
void | 计数器变化() |
void | 双击(int index, QBarSet *barset) |
void | 悬停(bool status, int index, QBarSet *barset) |
void | 标签角度变化(qreal angle) |
void | 标签格式变化(const QString &format) |
void | 标签位置变化(QAbstractBarSeries::LabelsPosition position) |
void | 标签精度变化(int precision) |
void | 标签可见性变化() |
void | 按下(int index, QBarSet *barset) |
void | 释放(int index, QBarSet *barset) |
详细信息
在柱状图中,柱子定义为包含每个类别的单个数据值的条形集合。柱子的位置由类别指定,其高度由数据值指定。包含多个条形集合的柱系列组合属于同一类别的柱子。柱子的显示方式由创建柱状图时选择的此类子类的实例确定。
如果主柱轴使用 QValueAxis 而不是 QBarCategoryAxis,则条形将围绕类别的索引值分组。
查看 带有小部件的图表示例库,了解如何使用 QBarSeries 类创建简单的柱状图。
另见QBarSet、QBarSeries、QStackedBarSeries、QPercentBarSeries、QHorizontalBarSeries、QHorizontalStackedBarSeries 和 QHorizontalPercentBarSeries。
成员类型文档
enum QAbstractBarSeries::LabelsPosition
此枚举值描述数据值标签的位置
常量 | 值 | 描述 |
---|---|---|
QAbstractBarSeries::LabelsCenter | 0 | 标签位于条形的中心。 |
QAbstractBarSeries::LabelsInsideEnd | 1 | 标签位于条形的顶部内部。 |
QAbstractBarSeries::LabelsInsideBase | 2 | 标签位于条形的底部内部。 |
QAbstractBarSeries::LabelsOutsideEnd | 3 | 标签位于条形的顶部外部。 |
属性文档
barWidth : qreal
此属性保存系列条形的宽度。
宽度的单位是 x 轴的单位。条形的最小宽度为零,负值被视为零。将宽度设置为零意味着无论 x 轴的缩放比例如何,条形在屏幕上的宽度都是一像素。宽度大于零的条形使用 x 轴缩放进行缩放。
注意:与QBarSeries一起使用时,此值指定一组的柱状宽度,而不是单个柱状宽度。
访问函数
qreal | barWidth() const |
void | setBarWidth(qreal width) |
另请参阅:QBarSeries.
[只读]
count : const int
此属性持有柱状系列中的柱状组数。
访问函数
int | count() const |
通知信号
void | 计数器变化() |
labelsAngle : qreal
此属性持有刻度标签的角度(以度为单位)。
访问函数
qreal | labelsAngle() const |
void | setLabelsAngle(qreal angle) |
通知信号
void | labelsAngleChanged(qreal angle) |
labelsFormat : QString
此属性持有用于在柱状系列中显示标签的格式。
QAbstractBarSeries 支持以下格式标记
@value | 柱状的价值 |
例如,以下使用格式标记的用法将产生显示值后跟单位(u)的标签
series->setLabelsFormat("@value u");
默认情况下,标签显示柱状的值。对于百分比柱状系列,将在值后添加%。标签显示在绘图区域,如果柱状宽度相近,标签可能发生重叠。
访问函数
QString | labelsFormat() const |
void | setLabelsFormat(const QString &format) |
通知信号
void | labelsFormatChanged(const QString &format) |
另请参阅:labelsVisible、labelsPosition和labelsPrecision。
labelsPosition : LabelsPosition
此属性持有值标签的位置。
访问函数
QAbstractBarSeries::LabelsPosition | labelsPosition() const |
void | setLabelsPosition(QAbstractBarSeries::LabelsPosition position) |
通知信号
void | labelsPositionChanged(QAbstractBarSeries::LabelsPosition position) |
另请参阅:labelsVisible和labelsFormat。
labelsPrecision : int
此属性持有在值标签中显示的最大有效数字数量。
默认值是6。
访问函数
int | labelsPrecision() const |
void | setLabelsPrecision(int precision) |
通知信号
void | labelsPrecisionChanged(int precision) |
labelsVisible : bool
此属性持有柱状系列中标签的可见性。
访问函数
bool | isLabelsVisible() const |
void | setLabelsVisible(bool visible = true) |
通知信号
void | 标签可见性变化() |
成员函数文档
[虚函数 noexcept]
QAbstractBarSeries::~QAbstractBarSeries()
删除与其相关的柱状组系列及其子系列。
bool QAbstractBarSeries::append(QBarSet *set)
将指定为set的柱状组添加到柱状系列中,并获得对该组的所有权。如果组为空或已属于该系列,则不会添加。如果添加成功,则返回true
。
bool QAbstractBarSeries::append(const QList<QBarSet *> &sets)
将指定为sets的柱状组列表添加到柱状系列中,并获得对这些组的所有权。如果所有组均成功添加,则返回true
。如果任何组为空或之前已添加到系列中,则不会添加任何内容,此函数返回false
。如果列表中任何组出现多次,则不会添加任何内容,此函数返回false
。
QList<QBarSet *> QAbstractBarSeries::barSets() const
返回柱状系列中的柱状组列表。保留柱状组所有权。
qreal QAbstractBarSeries::barWidth() const
返回系列中柱的宽度。
注意:这是属性barWidth的获取函数。
另请参阅:setBarWidth。
[信号]
void QAbstractBarSeries::barsetsAdded(const QList<QBarSet *> &sets)
当指定为sets的柱状组添加到系列中时,发出此信号。
[信号]
void QAbstractBarSeries::barsetsRemoved(const QList<QBarSet *> &sets)
当指定为sets的柱状组从系列中删除时,发出此信号。
另请参阅:remove。
void QAbstractBarSeries::clear()
从系列中删除所有柱状组并永久删除它们。
[信号]
void QAbstractBarSeries::clicked(int index, QBarSet *barset)
当用户点击由index指定的柱状系列中的柱由barset指定时,发出此信号。
int QAbstractBarSeries::count() const
返回柱状系列中柱状组的数量。
注意:这是属性count
的获取函数。
[信号]
void QAbstractBarSeries::countChanged()
当柱状组数量改变时,例如由append
或remove
触发时,发出此信号。
注意:这是属性count
的通知信号。
[信号]
void QAbstractBarSeries::doubleClicked(int index, QBarSet *barset)
当用户在由 barset 指定的条形集中双击由 index 指定的条形时,会发出此信号。
[信号]
void QAbstractBarSeries::hovered(bool status, int index, QBarSet *barset)
当鼠标悬停在由 barset 指定的条形集中由 index 指定的条形上时,会发出此信号。当鼠标移到条形上时,status 变为 true
,当鼠标再次移开时,它变为 false
。
bool QAbstractBarSeries::insert(int index, QBarSet *set)
将指定为 set 的条形集插入到系列中 index 指定位置,并获取对集合的所有权。如果集合为 null 或已属于系列,则不会添加。如果插入成功,返回 true
。
bool QAbstractBarSeries::isLabelsVisible() const
返回标签的可见性。
注意:属性 labelsVisible 的获取器函数。
[信号]
void QAbstractBarSeries::labelsAngleChanged(qreal angle)
值标签的 angle 发生变化时,会发出此信号。
注意:属性 labelsAngle 的通知信号。
[信号]
void QAbstractBarSeries::labelsFormatChanged(const QString &format)
当数据值标签的 format 发生变化时,会发出此信号。
注意:属性 labelsFormat 的通知信号。
[信号]
void QAbstractBarSeries::labelsPositionChanged(QAbstractBarSeries::LabelsPosition position)
当值标签的 position 发生变化时,会发出此信号。
注意:属性 labelsPosition 的通知信号。
[信号]
void QAbstractBarSeries::labelsPrecisionChanged(int precision)
值标签的 precision 发生变化时,会发出此信号。
注意:属性 labelsPrecision 的通知信号。
[信号]
void QAbstractBarSeries::labelsVisibleChanged()
当标签的可见性发生变化时,会发出此信号。
注意:属性 labelsVisible 的通知信号。
参考:isLabelsVisible() 和 setLabelsVisible。
[信号]
void QAbstractBarSeries::pressed(int index, QBarSet *barset)
当用户在指定 barset 的条形集中点击并按下鼠标按钮指定索引的条形时,该信号会被发出。
[信号]
void QAbstractBarSeries::released(int index, QBarSet *barset)
当用户在指定 barset 的条形集中释放对指定索引的条形的鼠标按下时,该信号会被发出。
bool QAbstractBarSeries::remove(QBarSet *set)
从系列中移除指定的 set 条形集,并在移除成功时永久删除它。如果集合被移除,则返回 true
。
void QAbstractBarSeries::setBarWidth(qreal width)
将系列条形的宽度设置为 width。
注意: 该属性 barWidth 的设置函数。
另请参阅 barWidth().
void QAbstractBarSeries::setLabelsVisible(bool visible = true)
设置条形系列中标签的可见性为 visible。
注意: 该属性 labelsVisible 的设置函数。
另请参阅 isLabelsVisible().
bool QAbstractBarSeries::take(QBarSet *set)
从系列中获取单个 set,不删除条形集对象。
注意: 系列仍然是条形集的父对象。您必须将父对象设置为采取完整所有权。
如果采取操作成功,则返回 true
。
© 2024 The Qt Company Ltd. 本章中的文档贡献是各自所有者的版权。本提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款授权的。Qt 和相关标志是 The Qt Company Ltd. 在芬兰和/或其他国家的商标。所有其他商标均为其各自所有者的财产。