QPieSeries Class
QPieSeries クラスは、データを円グラフで表示します。詳細...
| ヘッダー: | #include <QPieSeries> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs) |
| qmake: | QT += graphs |
| QML内: | PieSeries |
| 継承元: | QAbstractSeries |
- 継承されたメンバーを含むすべてのメンバーの一覧
- QPieSeriesは、Qt Graphs の2D用C++クラスの一部です。
パブリック型
(since 6.10) enum class | LabelVisibility { None, First, Even, Odd } |
プロパティ
|
|
パブリック関数
| QPieSeries(QObject *parent = nullptr) | |
| QPieSeries::LabelVisibility | angleSpanLabelVisibility() const |
| qreal | angleSpanVisibleLimit() const |
| bool | append(QPieSlice *slice) |
| bool | append(const QList<QPieSlice *> &slices) |
| QPieSlice * | append(const QString &label, qreal value) |
| QPieSlice * | at(qsizetype index) |
| void | clear() |
| qsizetype | count() const |
| qreal | endAngle() const |
| QPieSlice * | find(const QString &label) |
| qreal | holeSize() const |
| qreal | horizontalPosition() const |
| bool | insert(qsizetype index, QPieSlice *slice) |
| bool | isEmpty() const |
| qreal | pieSize() const |
| bool | remove(QPieSlice *slice) |
| bool | remove(qsizetype index) |
| void | removeMultiple(qsizetype index, int count) |
| bool | replace(const QList<QPieSlice *> &slices) |
| bool | replace(QPieSlice *oldSlice, QPieSlice *newSlice) |
| bool | replace(qsizetype index, QPieSlice *slice) |
| void | setAngleSpanLabelVisibility(QPieSeries::LabelVisibility newAngleSpanVisibleMode) |
| void | setAngleSpanVisibleLimit(qreal newAngleSpanVisibleLimit) |
| void | setEndAngle(qreal angle) |
| void | setHoleSize(qreal holeSize) |
| void | setHorizontalPosition(qreal relativePosition) |
| void | setLabelsPosition(QPieSlice::LabelPosition position) |
| void | setLabelsVisible(bool visible) |
| void | setPieSize(qreal relativeSize) |
| void | setSliceData(const QList<qreal> &newSliceData) |
| void | setSliceLabels(QStringList newLabels) |
| void | setStartAngle(qreal angle) |
| void | setVerticalPosition(qreal relativePosition) |
| QList<qreal> | sliceData() const |
| const QStringList & | sliceLabels() const & |
| QStringList | sliceLabels() && |
| QList<QPieSlice *> | slices() const |
| qreal | startAngle() const |
| qreal | sum() const |
| bool | take(QPieSlice *slice) |
| qreal | verticalPosition() const |
| QPieSeries & | operator<<(QPieSlice *slice) |
再実装されたパブリック関数
| virtual QAbstractSeries::SeriesType | type() const override |
シグナル
| void | added(const QList<QPieSlice *> &slices) |
| void | angleSpanLabelVisibilityChanged(QPieSeries::LabelVisibility visibility) |
| void | angleSpanVisibleLimitChanged(qreal limit) |
| void | countChanged() |
| void | endAngleChanged() |
| void | holeSizeChanged() |
| void | horizontalPositionChanged() |
| void | pieSizeChanged() |
| void | removed(const QList<QPieSlice *> &slices) |
| void | sliceDataChanged(const QList<qreal> &sliceData) |
| void | sliceLabelsChanged(const QStringList &sliceLabels) |
| void | startAngleChanged() |
| void | sumChanged() |
| void | verticalPositionChanged() |
詳細な説明
パイシリーズは、QPieSlice オブジェクトとして定義されたスライスで構成されます。QPieSeriesオブジェクトは、シリーズ内のすべてのスライスの合計に対する各スライスの割合を計算して、グラフ上のスライスの実際のサイズを決定するため、スライスには任意の値を指定できます。
グラフ上の円グラフのサイズと位置は、0.0 から 1.0 までの範囲の相対値を使用して制御されます。これらは、実際のグラフの矩形に関連付けられています。
デフォルトでは、円グラフは完全な円として定義されます。シリーズに対して開始角度と角度範囲を設定することで、部分的な円グラフを作成できます。完全な円グラフは 360 度で、0 度は 12 時の位置に相当します。
QPieSliceも参照してください 。
メンバ・タイプのドキュメント
[since 6.10] enum class QPieSeries::LabelVisibility
ラベルの表示設定。
| 定数 | 値 | 説明 |
|---|---|---|
QPieSeries::LabelVisibility::None | 0 | angleSpanVisibleLimit よりも角度スパンが小さいスライスのラベルはすべて非表示になります。 |
QPieSeries::LabelVisibility::First | 1 | angleSpanVisibleLimit よりも角度スパンが小さい連続するスライスのうち、最初のラベルを除くすべてのラベルが非表示になります。これがデフォルト値です。 |
QPieSeries::LabelVisibility::Even | 2 | angleSpanVisibleLimit より角度スパンが小さい連続するスライスのラベルのうち、2 番目以降を 1 つおきに非表示にします。 |
QPieSeries::LabelVisibility::Odd | 3 | angleSpanVisibleLimit よりも角度スパンが小さい連続するスライスのラベルは、最初のラベルから数えて 1 つおきに非表示になります。 |
この列挙型は Qt 6.10 で導入されました。
「QPieSeries::angleSpanVisibleLimit」も参照してください 。
プロパティのドキュメント
[since 6.10] angleSpanLabelVisibility : LabelVisibility
このプロパティは、ラベルの表示モードを指定します。
angleSpanVisibleLimit で設定された角度範囲の制限を下回った場合に、どのラベルを非表示にするかを決定するモードです。angleSpanVisibleLimit が設定されていない場合は、このプロパティは効果を持ちません。
この列挙型は Qt 6.10 で導入されました。
アクセス関数:
| QPieSeries::LabelVisibility | angleSpanLabelVisibility() const |
| void | setAngleSpanLabelVisibility(QPieSeries::LabelVisibility newAngleSpanVisibleMode) |
Notifierシグナル:
| void | angleSpanLabelVisibilityChanged(QPieSeries::LabelVisibility visibility) |
「QPieSeries::angleSpanVisibleLimit」も参照してください 。
[since 6.10] angleSpanVisibleLimit : qreal
このプロパティは、ラベルの表示可否を決定する角度範囲の上限を指定します。
スライスラベルの表示制限として使用される角度範囲です。この値未満の角度範囲を持つスライスは、シリーズに設定されたangleSpanLabelVisibility に基づいて表示状態が変更されます。デフォルト値は0 であり、これはangleSpanLabelVisibility の設定にかかわらず、どのスライスも非表示にならないことを意味します。
この列挙型はQt 6.10で導入されました。
アクセス関数:
| qreal | angleSpanVisibleLimit() const |
| void | setAngleSpanVisibleLimit(qreal newAngleSpanVisibleLimit) |
Notifierシグナル:
| void | angleSpanVisibleLimitChanged(qreal limit) |
「QPieSeries::angleSpanLabelVisibility」も参照してください 。
[read-only] count : qsizetype
このプロパティは、シリーズに含まれるスライスの数を保持します。
アクセス関数:
| qsizetype | count() const |
通知シグナル:
| void | countChanged() |
endAngle : qreal
このプロパティは、円グラフの終了角度を保持します。
円グラフの全周は360度で、0度は12時の位置にあたります。
デフォルト値は 360 です。
アクセス関数:
| qreal | endAngle() const |
| void | setEndAngle(qreal angle) |
通知シグナル:
| void | endAngleChanged() |
holeSize : qreal
このプロパティには、ドーナツの穴のサイズが格納されます。
pieSize プロパティを設定する際、穴のサイズがパイのサイズを超えないようにするため、必要に応じてこのプロパティが調整されます。
デフォルト値は 0.0 です。
アクセス関数:
| qreal | holeSize() const |
| void | setHoleSize(qreal holeSize) |
通知シグナル:
| void | holeSizeChanged() |
horizontalPosition : qreal
このプロパティは、パイチャートの水平位置を指定します。
この値はグラフの矩形を基準とするため、次のように定義されます。
- 0.0 は絶対的な左端です。
- 1.0 は絶対的な右端です。
デフォルト値は 0.5(中央)です。
アクセス関数:
| qreal | horizontalPosition() const |
| void | setHorizontalPosition(qreal relativePosition) |
通知シグナル:
| void | horizontalPositionChanged() |
verticalPositionも参照してください 。
pieSize : qreal
このプロパティは、円グラフのサイズを保持します。
この値はグラフの矩形を基準としているため、次のように定義されます。
- 0.0 は最小の pieSize(円グラフは描画されません)。
- 1.0 は、グラフに収まる最大の pieSize です。
このプロパティを設定すると、必要に応じてholeSize プロパティが調整され、穴のサイズが円グラフのサイズを超えないようにします。
デフォルト値は 0.7 です。
アクセス関数:
| qreal | pieSize() const |
| void | setPieSize(qreal relativeSize) |
Notifier シグナル:
| void | pieSizeChanged() |
[since 6.12] sliceData : QList<qreal>
宣言型スライス値。
このプロパティを設定すると、宣言的に円グラフのスライスを作成できます。シリーズは、値ごとに1つのスライスを自動的に作成します。ラベルは `sliceLabels` を通じて指定できます。
注: 宣言型と命令型のデータ入力を混在させることは サポートされていません。
この列挙型はQt 6.12で導入されました。
アクセス関数:
| QList<qreal> | sliceData() const |
| void | setSliceData(const QList<qreal> &newSliceData) |
通知シグナル:
| void | sliceDataChanged(const QList<qreal> &sliceData) |
sliceLabelsも参照してください 。
[since 6.12] sliceLabels : QStringList
宣言型スライスラベル。
sliceData によって作成されたスライスにラベルを指定します。ラベルは値と同じ順序で指定する必要があります。スライスの数を超える余分なラベルは無視されます。
注: 宣言型と命令型のデータ入力を混在させることは サポートされていません。
この列挙型は Qt 6.12 で導入されました。
アクセス関数:
| const QStringList & | sliceLabels() const & |
| QStringList | sliceLabels() && |
| void | setSliceLabels(QStringList newLabels) |
Notifierシグナル:
| void | sliceLabelsChanged(const QStringList &sliceLabels) |
sliceDataも参照してください 。
startAngle : qreal
このプロパティには、円グラフの開始角度が格納されます。
円グラフの全周は360度で、0度は12時の位置にあたります。
デフォルト値は 0 です。
アクセス関数:
| qreal | startAngle() const |
| void | setStartAngle(qreal angle) |
通知シグナル:
| void | startAngleChanged() |
[read-only] sum : qreal
このプロパティには、すべてのスライスの合計値が格納されます。
この系列は、自身が保持するすべてのスライスの合計を管理しています。
アクセス関数:
| qreal | sum() const |
通知シグナル:
| void | sumChanged() |
verticalPosition : qreal
このプロパティは、パイチャートの垂直位置を指定します。
この値はグラフの矩形を基準とするため、次のようになります。
- 0.0 は絶対的な最上部です。
- 1.0 は絶対的な最下部です。
デフォルト値は 0.5(中央)です。
アクセス関数:
| qreal | verticalPosition() const |
| void | setVerticalPosition(qreal relativePosition) |
通知シグナル:
| void | verticalPositionChanged() |
horizontalPositionも参照してください 。
メンバ関数のドキュメント
[explicit] QPieSeries::QPieSeries(QObject *parent = nullptr)
parent の子となるシリーズオブジェクトを作成します。
[signal] void QPieSeries::added(const QList<QPieSlice *> &slices)
slices で指定されたスライスがシリーズに追加されると、このシグナルが発信されます。
append()も参照してください 。
[invokable] bool QPieSeries::append(QPieSlice *slice)
slice で指定されたスライスをシリーズに追加します。スライスの所有権はシリーズに渡されます。
追加に成功した場合、true を返します。
注:この関数は 、メタオブジェクトシステムを介して、およびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSeries::append(const QList<QPieSlice *> &slices)
slices で指定されたスライスの配列を、シリーズに追加します。スライスの所有権はシリーズに渡されます。
追加に成功した場合、true を返します。
注:この関数は 、メタオブジェクトシステムを介して、および QML から呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] QPieSlice *QPieSeries::append(const QString &label, qreal value)
指定されたvalue およびlabel を持つ単一のスライスをシリーズに追加します。スライスの所有権はシリーズに渡されます。value がNaN 、Inf 、または-Inf の場合、nullを返し、シリーズには何も追加されません。
注:この関数は 、メタオブジェクトシステムを介して、またはQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] QPieSlice *QPieSeries::at(qsizetype index)
位置index にあるPieSlice を返します。PieSlice が見つからない場合はnullを返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] void QPieSeries::clear()
シリーズからすべてのスライスを削除します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
qsizetype QPieSeries::count() const
この系列に含まれるスライスの数を返します。
注: プロパティ `count`のゲッター 関数です。
qreal QPieSeries::endAngle() const
円グラフの終了角度を返します。
円グラフの全周は360度で、0度は12時の位置にあたります。
注: プロパティ endAngle のゲッター 関数です。
関連項目: setEndAngle()、startAngle()、setStartAngle()。
[invokable] QPieSlice *QPieSeries::find(const QString &label)
ラベル「label 」を含むPieSlice を検索します。見つかった場合はPieSlice を返し、見つからない場合はnullを返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSeries::insert(qsizetype index, QPieSlice *slice)
slice で指定されたスライスを、index で指定された位置にあるスライスの前に、シリーズに挿入します。スライスの所有権はシリーズに渡されます。
挿入に成功した場合、true を返します。
注:この関数は 、メタオブジェクトシステムを介して、または QML から呼び出すことができます。Q_INVOKABLE を参照してください。
bool QPieSeries::isEmpty() const
シリーズが空の場合、true を返します。
[invokable] bool QPieSeries::remove(QPieSlice *slice)
slice で指定された 1 つのスライスをシリーズから削除し、完全に破棄します。
この呼び出し後は、そのポインタを参照することはできません。
削除に成功した場合は、true を返します。
注:この関数は 、メタオブジェクトシステムを介して、また QML から呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSeries::remove(qsizetype index)
index にあるPieSlice を削除します。PieSlice は完全に削除されます。削除に成功した場合は、true を返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] void QPieSeries::removeMultiple(qsizetype index, int count)
index からcount までの範囲にある、一連の PieSlices を複数削除します。削除された PieSlices は完全に削除されます。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[signal] void QPieSeries::removed(const QList<QPieSlice *> &slices)
slices で指定されたスライスがシリーズから削除されたときに、このシグナルが発生します。
remove()も参照してください 。
[invokable] bool QPieSeries::replace(const QList<QPieSlice *> &slices)
シリーズ内のPieSlicesのリスト全体を、slices で指定されたリストに置き換えます。元のPieSlicesはすべて完全に削除されます。すべてのPieSlicesの置き換えが正常に完了した場合、true を返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSeries::replace(QPieSlice *oldSlice, QPieSlice *newSlice)
シリーズ内に `PieSlice ` `oldSlice ` が見つかった場合、これを `newSlice ` に置き換えます。`oldSlice ` は完全に削除されます。置き換えに成功した場合は `true ` を返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[invokable] bool QPieSeries::replace(qsizetype index, QPieSlice *slice)
位置index にあるPieSlice を、slice で指定されたものに置き換えます。元のPieSlice は完全に削除されます。PieSlicesのいずれかの置き換えに失敗した場合は、false を返します。
注:この関数は 、メタオブジェクトシステムを介して、およびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
void QPieSeries::setEndAngle(qreal angle)
パイの終了角度を設定します。
円グラフの全周は360度で、0度は12時の位置にあたります。
angle 開始角度よりも大きくなければなりません。
注: プロパティ `endAngle`のセッター 関数です。
関連項目: endAngle()、startAngle()、およびsetStartAngle()。
void QPieSeries::setLabelsPosition(QPieSlice::LabelPosition position)
すべてのスライスラベルの位置をposition に設定します。
注:この関数は 、シリーズ内の現在のスライスにのみ影響します。新しいスライスが追加された場合、ラベルの位置はデフォルトで QPieSlice::LabelOutside になります。
QPieSlice::labelPosition() およびQPieSlice::setLabelPosition()も参照してください 。
void QPieSeries::setLabelsVisible(bool visible)
すべてのスライスラベルの表示設定を「visible 」に設定します。
注:この関数は 、シリーズ内の現在のスライスのみに影響します。新しいスライスが追加された場合、ラベルの表示状態のデフォルトはfalse になります。
関連項目: QPieSlice::isLabelVisible() およびQPieSlice::setLabelVisible()。
void QPieSeries::setStartAngle(qreal angle)
パイの開始角度を設定します。
円グラフの全周は360度で、0度は12時の位置にあたります。
angle 終了角度よりも小さく設定する必要があります。
注: プロパティstartAngle のセッター 関数です。
startAngle()、endAngle()、およびsetEndAngle()も参照してください 。
QList<QPieSlice *> QPieSeries::slices() const
この系列に属するスライスのリストを返します。
qreal QPieSeries::startAngle() const
円グラフの開始角度を返します。
円グラフの全周は360度で、0度は12時の位置にあたります。
注: プロパティ startAngle のゲッター 関数です。
関連項目: setStartAngle()、endAngle()、およびsetEndAngle()。
qreal QPieSeries::sum() const
この系列に含まれるすべてのスライスの値の合計を返します。
注: プロパティ `sum`のゲッター 関数です。
関連項目: QPieSlice::value()、QPieSlice::setValue()、およびQPieSlice::percentage()。
[invokable] bool QPieSeries::take(QPieSlice *slice)
slice で指定された単一のスライスを、シリーズから取得します。スライスオブジェクトは削除されません。
注:シリーズは スライスの親オブジェクトのままとなります。完全な所有権を取得するには、親オブジェクトを設定する必要があります。
take 操作が成功した場合、true を返します。
注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。
[override virtual] QAbstractSeries::SeriesType QPieSeries::type() const
プロパティ「QAbstractSeries::type 」のアクセス関数を再実装します。
系列の型を返します。
QPieSeries &QPieSeries::operator<<(QPieSlice *slice)
slice で指定されたスライスをシリーズに追加し、そのシリーズへの参照を返します。スライスの所有権はシリーズに引き継がれます。
© 2026 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.