QPieSeries 类

QPieSeries 类以饼图的形式呈现数据。更多信息...

头文件 #include <QPieSeries>
实例化自 饼图序列
继承自 QAbstractSeries

属性

公共函数

QPieSeries(QObject *parent = nullptr)
虚拟~QPieSeries()
boolappend(QPieSlice *slice)
boolappend(const QList<QPieSlice *> &slices)
QPieSlice *append(const QString &label, qreal value)
voidclear()
intcount() const
qrealholeSize() const
qrealhorizontalPosition() const
boolinsert(int index, QPieSlice *slice)
boolisEmpty() const
qrealpieEndAngle() const
qrealpieSize() const
qrealpieStartAngle() const
boolremove(QPieSlice *slice)
voidsetHoleSize(qreal holeSize)
voidsetHorizontalPosition(qreal relativePosition)
voidsetLabelsPosition(QPieSlice::LabelPosition position)
voidsetLabelsVisible(bool visible = true)
voidsetPieEndAngle(qreal angle)
voidsetPieSize(qreal relativeSize)
voidsetPieStartAngle(qreal startAngle)
voidsetVerticalPosition(qreal relativePosition)
QList<QPieSlice *>slices() const
qrealsum() const
bool取(take)QPieSlice *slice
qreal垂直位置(verticalPosition)() const
QPieSeries &operator<<(QPieSlice *slice)

重新实现的公共函数

virtual QAbstractSeries::SeriesTypetype() const override

信号

voidadded(const QList<QPieSlice *> &slices)
voidclicked(QPieSlice *slice)
void计数改变()
voiddoubleClicked(QPieSlice *slice)
voidhovered(QPieSlice *slice, bool state)
voidpressed(QPieSlice *slice)
voidreleased(QPieSlice *slice)
voidremoved(const QList<QPieSlice *> &slices)
void总和改变()

详细描述

饼图系列由定义为 QPieSlice 对象的切片组成。切片可以具有任何值,QPieSeries 对象通过计算切片相对于系列中所有切片总和的百分比来确定图表中切片的实际大小。

饼图大小和图表上的位置通过使用范围从 0.0 到 1.0 的相对值来控制。这些值与实际图表矩形相关。

默认情况下,饼图被定义为完整饼图。可以通过设置系列的开始角度和角度范围来创建部分饼图。完整饼图是 360 度,其中 0 度在 12 点。

查看图表小部件画廊,了解如何使用 QPieSeries。

另请参阅QPieSliceQChart

属性说明

[只读] count : const int

此属性包含系列中的切片数量。

访问函数

intcount() const

通知信号

void计数改变()

endAngle : qreal

此属性包含饼图的结束角度。

完整饼图是 360 度,其中 0 度在 12 点。

默认值是 360。

访问函数

qrealpieEndAngle() const
voidsetPieEndAngle(qreal angle)

holeSize : qreal

此属性包含甜甜圈的孔径大小。

值相对于图表矩形,因此

  • 0.0 是最小尺寸(绘制不带孔的完整饼图)。
  • 1.0 是可以适应图表的最大尺寸(甜甜圈没有宽度)。

设置此属性时,如果需要,会调整size属性,以确保孔径大小不超过饼图大小。

默认值是 0.0。

访问函数

qrealholeSize() const
voidsetHoleSize(qreal holeSize)

horizontalPosition : qreal

此属性包含饼图的水平位置。

值相对于图表矩形,因此

  • 0.0 是绝对左侧。
  • 1.0 是绝对右侧。

默认值为0.5(居中)。

访问函数

qrealhorizontalPosition() const
voidsetHorizontalPosition(qreal relativePosition)

另请参阅 verticalPosition.

size : qreal

该属性包含饼图大小。

值相对于图表矩形,因此

  • 0.0是最小大小(不绘制饼图)。
  • 1.0是可以适应图表的最大大小。

设置此属性时,如果需要,会调整holeSize属性,以确保孔径大小不超过饼图大小。

默认值为0.7。

访问函数

qrealpieSize() const
voidsetPieSize(qreal relativeSize)

startAngle : qreal

该属性包含饼图的起始角度。

完整饼图是 360 度,其中 0 度在 12 点。

默认值为0。

访问函数

qrealpieStartAngle() const
voidsetPieStartAngle(qreal startAngle)

[只读] sum : const qreal

该属性包含所有切片的总和。

该系列跟踪其持有的所有切片的总和。

访问函数

qrealsum() const

通知信号

void总和改变()

verticalPosition : qreal

该属性包含饼图的垂直位置。

值相对于图表矩形,因此

  • 0.0是绝对顶部。
  • 1.0是绝对底部。

默认值为0.5(居中)。

访问函数

qrealverticalPosition() const
voidsetVerticalPosition(qreal relativePosition)

另请参阅 horizontalPosition.

成员函数文档

[显式] QPieSeries::QPieSeries(QObject *parent = nullptr)

构建一个系列对象,它是parent的子对象。

[虚函数 noexcept] QPieSeries::~QPieSeries()

移除饼图系列及其切片。

[信号] void QPieSeries::added(const QList<QPieSlice *> &slices)

当由slices指定的切片被添加到系列中时,发出此信号。

另请参阅 append() 和 insert()。

bool QPieSeries::append(QPieSlice *slice)

将指定的slice切片追加到系列中。切片所有权传递给系列。

如果追加成功,则返回true

bool QPieSeries::append(const QList<QPieSlice *> &slices)

将指定的slices切片数组追加到系列中。切片所有权传递给系列。

如果追加成功,则返回true

QPieSlice *QPieSeries::append(const QString &label, qreal value)

将指定 valuelabel 的单个切片添加到系列中。切片的所有权传递给系列。如果 valueNaNInf-Inf,则返回空并系列中不添加任何内容。

void QPieSeries::clear()

清除系列中的所有切片。

[signal] void QPieSeries::clicked(QPieSlice *slice)

当点击指定的 slice 时发出此信号。

另请参阅QPieSlice::clicked

int QPieSeries::count() const

返回此系列中切片的数量。

注意:count 属性的获取器函数。

[signal] void QPieSeries::countChanged()

切片数量改变时发出此信号。

注意:count 属性的通知信号。

另请参阅count

[signal] void QPieSeries::doubleClicked(QPieSlice *slice)

当对指定的 slice 进行双击时发出此信号。

另请参阅QPieSlice::doubleClicked

[signal] void QPieSeries::hovered(QPieSlice *slice, bool state)

当鼠标悬停在指定的 slice 上时发出此信号。当鼠标移动到切片上时,state 转换为 true,当鼠标再次移开时,它转换为 false

另请参阅QPieSlice::hovered

bool QPieSeries::insert(int index, QPieSlice *slice)

在指定的 index 之前将指定的 slice 插入到系列中。切片的所有权传递给系列。

如果插入成功,则返回 true

bool QPieSeries::isEmpty() const

如果系列为空,则返回 true

qreal QPieSeries::pieEndAngle() const

返回饼图的结束角度。

完整饼图是 360 度,其中 0 度在 12 点。

注意:endAngle 属性的获取器函数。

另请参阅setPieEndAnglepieStartAnglesetPieStartAngle

[signal] void QPieSeries::pressed(QPieSlice *slice)

当用户点击指定的 slice 并按下鼠标按钮时,会发出此信号。

参阅QPieSlice::pressed().

[信号] void QPieSeries::released(QPieSlice *slice)

当用户释放指定的 slice 上的鼠标按下时,会发出此信号。

参阅QPieSlice::released().

bool QPieSeries::remove(QPieSlice *slice)

从系列中删除一个由 slice 指定的切片,并永久删除它。

调用此函数后,指针不能被引用。

如果删除成功,则返回 true

[信号] void QPieSeries::removed(const QList<QPieSlice *> &slices)

当指定的 slices 从系列中删除时,会发出此信号。

参阅remove().

void QPieSeries::setLabelsPosition(QPieSlice::LabelPosition position)

将所有切片标签的位置设置为 position

注意:此函数仅影响系列中的当前切片。如果添加新的切片,则默认标签位置为 QPieSlice::LabelOutside

参阅QPieSlice::labelPosition() 和 QPieSlice::setLabelPosition().

void QPieSeries::setLabelsVisible(bool visible = true)

将所有切片标签的可见性设置为 visible

注意:此函数仅影响系列中的当前切片。如果添加新的切片,则默认标签可见性为 false

参阅QPieSlice::isLabelVisible() 和 QPieSlice::setLabelVisible().

void QPieSeries::setPieEndAngle(qreal angle)

设置饼图的结束角度。

完整饼图是 360 度,其中 0 度在 12 点。

angle 必须大于起始角度。

注意:这是属性 endAngle 的设置函数。

参阅pieEndAnglepieStartAnglesetPieStartAngle

QList<QPieSlice *> QPieSeries::slices() const

返回属于此系列的所有切片的列表。

qreal QPieSeries::sum() const

返回系列中所有切片值的总和。

注意:这是属性 sum 的获取函数。

参阅QPieSlice::valueQPieSlice::setValueQPieSlice::percentage

[信号] void QPieSeries::sumChanged()

当所有切片的总和发生变化时,会发出此信号。

注意:属性 sum 的通知信号。

另请参阅:sum.

bool QPieSeries::take(QPieSlice *slice)

从系列中获取一个指定为 slice 的切片,但不删除切片对象。

注意:系列仍然是切片的父对象。您必须将父对象设置为接受完全所有权。

如果提取操作成功,则返回 true

[重写虚函数] QAbstractSeries::SeriesType QPieSeries::type() const

重新实现了属性: QAbstractSeries::type.

返回系列的类型。

QPieSeries &QPieSeries::operator<<(QPieSlice *slice)

将指定的 slice 切片追加到系列中,并返回系列的一个引用。切片的所有权传递给系列。

© 2024 The Qt Company Ltd. 本文档中的文档贡献版权归其各自的所有者所有。本提供的文档是根据自由软件基金会发布的 GNU自由文档许可证版本1.3 的条款许可的。Qt及其相关标志是芬兰的The Qt Company Ltd.和/或全球其他国家的商标。所有其他商标都是其各自所有者的财产。