このページでは

QBarSeries Class

QBarSeries クラスは、データを棒グラフで表示します。詳細...

ヘッダー: #include <QBarSeries>
CMake: find_package(Qt6 REQUIRED COMPONENTS Graphs)
target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: QT += graphs
QML内: BarSeries
継承元: QAbstractSeries

パブリック型

enum class BarsType { Groups, Stacked, StackedPercent }
enum class LabelsPosition { Center, InsideEnd, InsideBase, OutsideEnd }

プロパティ

パブリック関数

QBarSeries(QObject *parent = nullptr)
bool append(QBarSet *set)
bool append(const QList<QBarSet *> &sets)
QBarSet *at(qsizetype index)
QQmlComponent *barDelegate() const
QList<QBarSet *> barSets() const
qreal barWidth() const
QBarSeries::BarsType barsType() const
QList<QColor> borderColors() const
void clear()
qsizetype count() const
qsizetype find(QBarSet *set) const
bool insert(qsizetype index, QBarSet *set)
qreal labelsAngle() const
QString labelsFormat() const
qreal labelsMargin() const
QBarSeries::LabelsPosition labelsPosition() const
int labelsPrecision() const
bool labelsVisible() const
bool remove(QBarSet *set)
bool remove(qsizetype index)
void removeMultiple(qsizetype index, qsizetype count)
bool replace(const QList<QBarSet *> &sets)
bool replace(QBarSet *oldValue, QBarSet *newValue)
void replace(qsizetype index, QBarSet *set)
QList<QColor> seriesColors() const
void setBarDelegate(QQmlComponent *newBarDelegate)
void setBarWidth(qreal width)
void setBarsType(QBarSeries::BarsType type)
void setBorderColors(const QList<QColor> &newBorderColors)
void setLabelsAngle(qreal angle)
void setLabelsFormat(const QString &format)
void setLabelsMargin(qreal margin)
void setLabelsPosition(QBarSeries::LabelsPosition position)
void setLabelsPrecision(int precision)
void setLabelsVisible(bool visible = true)
void setSeriesColors(const QList<QColor> &newSeriesColors)
bool take(QBarSet *set)

再実装されたパブリック関数

virtual QAbstractSeries::SeriesType type() const override

シグナル

void barDelegateChanged()
void barSetsChanged()
void barWidthChanged()
void barsTypeChanged(QBarSeries::BarsType type)
void barsetsAdded(const QList<QBarSet *> &sets)
void barsetsRemoved(const QList<QBarSet *> &sets)
void borderColorsChanged()
void countChanged()
void labelsAngleChanged(qreal angle)
void labelsFormatChanged(const QString &format)
void labelsMarginChanged(qreal margin)
void labelsPositionChanged(QBarSeries::LabelsPosition position)
void labelsPrecisionChanged(int precision)
void labelsVisibleChanged(bool visible)
void seriesColorsChanged()
void setValueAdded(qsizetype index, qsizetype count, QBarSet *barset)
void setValueChanged(qsizetype index, QBarSet *barset)
void setValueRemoved(qsizetype index, qsizetype count, QBarSet *barset)
void updatedBars()

詳細な説明

このクラスは、デフォルトではデータをカテゴリごとにグループ化された棒グラフの系列として描画します。各棒グラフセットから、カテゴリごとに1本の棒が系列に追加されます。また、水平棒グラフや、積み上げ棒グラフとしてのグループ化もサポートしています。

棒グラフシリーズでは、GraphsView の x 軸をBarCategoryAxis に設定し、y 軸をValueAxis に設定する必要があります。

「 QBarSet 」および「QAbstractSeries 」も参照してください 。

メンバー型のドキュメント

enum class QBarSeries::BarsType

この列挙値は、棒グラフシリーズのタイプを表します:

定数値説明
QBarSeries::BarsType::Groups0棒グラフのセットはカテゴリごとにグループ化されます。
QBarSeries::BarsType::Stacked1棒グラフセットは、カテゴリごとに縦に積み重ねられます。
QBarSeries::BarsType::StackedPercent2棒グラフセットはカテゴリごとに連続して積み重ねられます。セグメントのサイズは、積み重ねられたすべてのセグメントの合計値に対する、そのセグメントの値の割合に対応しています。

enum class QBarSeries::LabelsPosition

この列挙値は、データ値ラベルの位置を表します:

定数値説明
QBarSeries::LabelsPosition::Center0ラベルはバーの中央に配置されます。
QBarSeries::LabelsPosition::InsideEnd1ラベルは棒グラフの上部内に配置されます。
QBarSeries::LabelsPosition::InsideBase2ラベルはバーの内側、下部に配置されます。
QBarSeries::LabelsPosition::OutsideEnd3ラベルはバーの上部の外側に配置されています。

プロパティのドキュメント

barDelegate : QQmlComponent*

このプロパティには、各バーを視覚化するために使用されるカスタムQMLコンポーネントが格納されます。各バーに対して、このコンポーネントのインスタンスが作成されます。これが定義されていない場合、バーのデフォルトの矩形による視覚化が使用されます。

このコンポーネントで使用可能な動的プロパティは以下の通りです:

タイプ名前説明
QColorbarColorバーの塗りつぶし色。この値は、QGraphsTheme から取得されるか、QBarSet が色を上書きしている場合はQBarSet::color から取得されます。
QColorbarBorderColorバーの境界線の色。この値は、QGraphsTheme から取得されるか、QBarSet が色を上書きしている場合はQBarSet::borderColor から取得されます。
qrealbarBorderWidthバーの境界線の幅。この値は、QGraphsTheme から取得されるか、QBarSet が幅を上書きしている場合はQBarSet::borderWidth から取得されます。
qrealbarValue棒グラフの値。この値は、QBarSet::values から取得されます。
QStringbarLabelバーのラベル。この値は、QBarSet::label から取得されます。
boolbarSelectedこの値は、バーが選択されている場合(つまり、バーのインデックスが `QBarSet::selectedBars` に含まれている場合)に `true` になります。
intbarIndexバーのインデックス。0 からバーの総数 - 1 までの範囲です。[バージョン 6.9 以降]

これらを使用するには、カスタムコンポーネントに定義された名前のプロパティを追加してください。例:"property color barColor" や"property real barValue" 。

アクセス関数:

QQmlComponent *barDelegate() const
void setBarDelegate(QQmlComponent *newBarDelegate)

Notifierシグナル:

void barDelegateChanged()

[read-only] barSets : QList<QBarSet *>

このプロパティには、シリーズに追加されたセットのリストが格納されます。

アクセス関数:

QList<QBarSet *> barSets() const

通知シグナル:

void barSetsChanged()

barWidth : qreal

このプロパティは、シリーズの棒グラフの幅を指定します。

幅の単位は x 軸の単位と同じです。棒グラフの最小幅は 0 であり、負の値は 0 として扱われます。幅を 0 に設定すると、x 軸のスケールに関係なく、画面上の棒グラフの幅は 1 ピクセルになります。0 より広い棒グラフは、x 軸のスケールに基づいて拡大縮小されます。

デフォルトでは、barWidth は 0.5 です(棒グラフは利用可能な幅の 50% を占めます)。有効な値の範囲は 0.0(0%)から 1.0(100%)です。

注: QBarSeries と併用する場合 、この値は単一の棒グラフの幅ではなく、棒グラフのグループ全体の幅を指定します。

アクセス関数:

qreal barWidth() const
void setBarWidth(qreal width)

Notifierシグナル:

void barWidthChanged()

「QBarSeries」も参照してください 。

barsType : BarsType

このプロパティは、棒グラフシリーズの型を保持します。

アクセス関数:

QBarSeries::BarsType barsType() const
void setBarsType(QBarSeries::BarsType type)

通知信号:

void barsTypeChanged(QBarSeries::BarsType type)

borderColors : QList<QColor>

このプロパティには、シリーズ内のすべてのオブジェクトに使用される境界線の色のリストが格納されます。

色の数よりも系列の数が多い場合、色リストはループし、リストの最初の色から再び繰り返されます。このプロパティが設定されていない場合(デフォルト)、QGraphsTheme::borderColors の色が使用されます。

アクセス関数:

QList<QColor> borderColors() const
void setBorderColors(const QList<QColor> &newBorderColors)

通知シグナル:

void borderColorsChanged()

[read-only] count : qsizetype

このプロパティは、バーシリーズに含まれるバーセットの数を保持します。

アクセス関数:

qsizetype count() const[see note below]

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

通知シグナル:

void countChanged()

labelsAngle : qreal

このプロパティは、値ラベルの角度(度単位)を保持します。

アクセス関数:

qreal labelsAngle() const
void setLabelsAngle(qreal angle)

通知シグナル:

void labelsAngleChanged(qreal angle)

labelsFormat : QString

このプロパティは、棒グラフシリーズでラベルを表示する際に使用される書式を保持します。

QBarSeries 以下のフォーマットタグをサポートしています:

@value棒グラフの値

たとえば、フォーマットタグを次のように使用すると、値の後に単位 (u) が続くラベルが表示されます:

series->setLabelsFormat("@value u");

デフォルトでは、ラベルには棒グラフの値が表示されます。パーセント棒グラフシリーズの場合、値の後に「%」が追加されます。ラベルはプロット領域に表示されますが、棒グラフが互いに近接している場合、ラベルが重なることがあります。

アクセス関数:

QString labelsFormat() const
void setLabelsFormat(const QString &format)

通知シグナル:

void labelsFormatChanged(const QString &format)

関連項目 :labelsVisible 、labelsPosition 、およびlabelsPrecisionも参照してください 。

labelsMargin : qreal

このプロパティは、値ラベルの余白をピクセル単位で指定します。

この余白は、labelsPosition がLabelsPosition.Center 以外に設定されている場合に使用されます。デフォルト値は0 です。

アクセス関数:

qreal labelsMargin() const
void setLabelsMargin(qreal margin)

Notifierシグナル:

void labelsMarginChanged(qreal margin)

labelsPosition : LabelsPosition

このプロパティは、値ラベルの位置を指定します。

アクセス関数:

QBarSeries::LabelsPosition labelsPosition() const
void setLabelsPosition(QBarSeries::LabelsPosition position)

通知シグナル:

void labelsPositionChanged(QBarSeries::LabelsPosition position)

関連項目: labelsVisible およびlabelsFormat 。

labelsPrecision : int

このプロパティは、値ラベルに表示される有効桁数の最大値を指定します。

デフォルト値は 6 です。

アクセス関数:

int labelsPrecision() const
void setLabelsPrecision(int precision)

通知信号:

void labelsPrecisionChanged(int precision)

labelsVisible : bool

このプロパティは、棒グラフシリーズにおけるラベルの表示設定を指定します。ラベルのデフォルトの表示設定は「false 」です。

注: デフォルトのラベルには 、セットの値のみが表示されます。barDelegate を使用すると、カスタムラベルを作成できます。

アクセス関数:

bool labelsVisible() const
void setLabelsVisible(bool visible = true)

通知シグナル:

void labelsVisibleChanged(bool visible)

関連項目: ` barDelegate`。

seriesColors : QList<QColor>

このプロパティには、シリーズ内のすべてのオブジェクトに使用される基本色のリストが格納されます。

色の数よりもシリーズの数が多ければ、色リストはループして、リストの最初の色から再び繰り返されます。このプロパティが設定されていない場合(デフォルト)、QGraphsTheme::seriesColors の色が使用されます。

アクセス関数:

QList<QColor> seriesColors() const
void setSeriesColors(const QList<QColor> &newSeriesColors)

通知シグナル:

void seriesColorsChanged()

メンバ関数のドキュメント

[explicit] QBarSeries::QBarSeries(QObject *parent = nullptr)

QObject であり、parent の子要素となる、空の棒グラフシリーズを作成します。

[invokable] bool QBarSeries::append(QBarSet *set)

set で指定された棒グラフのセットを棒グラフシリーズに追加し、その所有権を取得します。セットが null であるか、すでにそのシリーズに属している場合は、追加されません。追加に成功した場合は、true を返します。

注:この関数は 、メタオブジェクトシステムを介して、または QML から呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] bool QBarSeries::append(const QList<QBarSet *> &sets)

sets で指定されたバーセットのリストをバーシリーズに追加し、それらのセットの所有権を取得します。 すべてのセットの追加に成功した場合は、true を返します。いずれかのセットがnullであるか、以前にそのシリーズに追加されていた場合、何も追加されず、この関数はfalse を返します。リスト内に同じセットが複数回含まれている場合、何も追加されず、この関数はfalse を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] QBarSet *QBarSeries::at(qsizetype index)

index の位置で指定された `BarSet ` を取得します。BarSet が見つからない場合は `null` を返します。

注:この関数は 、メタオブジェクトシステムを介して、またはQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

QList<QBarSet *> QBarSeries::barSets() const

バーシリーズ内のバーセットのリストを返します。バーセットの所有権は保持されます。

注: プロパティ barSets のゲッター 関数です。

qreal QBarSeries::barWidth() const

このシリーズの棒グラフの幅を返します。

注: プロパティ barWidth のゲッター関数です 。

関連項目: setBarWidth()。

[signal] void QBarSeries::barsetsAdded(const QList<QBarSet *> &sets)

このシグナルは、sets で指定されたバーがシリーズに追加されたときに発信されます。

append() およびinsert()も参照してください 。

[signal] void QBarSeries::barsetsRemoved(const QList<QBarSet *> &sets)

このシグナルは、sets で指定されたバーがシリーズから削除されたときに発生します。

remove()も参照してください 。

[invokable] void QBarSeries::clear()

シリーズからすべてのバーセットを削除し、それらを完全に削除します。

注:この関数は 、メタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] qsizetype QBarSeries::count() const

バー系列に含まれるバーセットの数を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

注: プロパティ countのゲッター 関数です。

[invokable] qsizetype QBarSeries::find(QBarSet *set) const

set で定義されているBarSet の最初のインスタンスのインデックスを返します。BarSet が見つからない場合は -1 を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] bool QBarSeries::insert(qsizetype index, QBarSet *set)

set で指定されたバーセットを、index で指定された位置にシリーズに挿入し、そのセットの所有権を取得します。セットが null であるか、すでにそのシリーズに属している場合は、挿入されません。挿入に成功した場合は、true を返します。

注:この関数は 、メタオブジェクトシステムを介して、または QML から呼び出すことができます。Q_INVOKABLE を参照してください。

bool QBarSeries::labelsVisible() const

ラベルの表示状態を返します。

注: propertiesラベルの「labelsVisible」プロパティのゲッター 関数です。

関連項目: setLabelsVisible()。

[signal] void QBarSeries::labelsVisibleChanged(bool visible)

このシグナルは、ラベルの可視性がvisible に変更されたときに発火します。

注: プロパティ `labelsVisible` に対する通知 シグナルです。

関連項目: labelsVisible() およびsetLabelsVisible()。

[invokable] bool QBarSeries::remove(QBarSet *set)

set で指定されたバーセットをシリーズから削除し、削除に成功した場合はそれを完全に削除します。セットが削除された場合は、true を返します。

注:この関数は 、メタオブジェクトシステムやQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] bool QBarSeries::remove(qsizetype index)

index にある「BarSet 」を削除します。BarSet は完全に削除されます。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] void QBarSeries::removeMultiple(qsizetype index, qsizetype count)

index からcount までの範囲にある複数の BarSet をシリーズから削除します。削除された BarSet は完全に削除されます。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] bool QBarSeries::replace(const QList<QBarSet *> &sets)

このBarSeries 内のBarSet リスト全体を、sets で指定されたBarSetsに置き換えます。元のBarSetsはすべて完全に削除されます。すべてのBarSetsが置き換えられた場合、true を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] bool QBarSeries::replace(QBarSet *oldValue, QBarSet *newValue)

oldValue で指定された `BarSet ` を、newValue にあるものに変更します。oldValue にある `BarSet ` がシリーズ内で見つかった場合、そのオブジェクトは永久に削除されます。置換が成功した場合は `true ` を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[invokable] void QBarSeries::replace(qsizetype index, QBarSet *set)

index に存在するBarSet を、set に置き換えます。元のBarSet は完全に削除されます。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

void QBarSeries::setBarWidth(qreal width)

シリーズの棒の幅をwidth に設定します。

注: プロパティ `barWidth`のセッター 関数です。

barWidth()も参照してください 。

void QBarSeries::setLabelsVisible(bool visible = true)

棒グラフシリーズ内のラベルの表示設定を「visible 」に設定します。

注: プロパティ `labelsVisible`のセッター 関数です。

labelsVisible()も参照してください 。

[signal] void QBarSeries::setValueAdded(qsizetype index, qsizetype count, QBarSet *barset)

このシグナルは、バーセットの値が変更されたときに発火します。index は、シリーズ内のバーセットのインデックスです。追加された値の数はcount で示されます。barset は、変更されたセットへのポインタです。

[signal] void QBarSeries::setValueChanged(qsizetype index, QBarSet *barset)

このシグナルは、バーセットの値が変更されたときに発火します。index は、シリーズ内のバーセットのインデックスです。barset は、変更されたセットへのポインタです。

[signal] void QBarSeries::setValueRemoved(qsizetype index, qsizetype count, QBarSet *barset)

このシグナルは、バーセットの値が変更されたときに発火します。index は、シリーズ内のバーセットのインデックスです。削除された値の数はcount で示されます。barset は、変更されたセットへのポインタです。

[invokable] bool QBarSeries::take(QBarSet *set)

シリーズからset を1つ取得します。バーセットオブジェクトは削除されません。

注:シリーズは バーセットの親オブジェクトのままとなります。完全な所有権を取得するには、親オブジェクトを設定する必要があります。

take 操作が成功した場合、true を返します。

注:この関数は 、メタオブジェクトシステムおよびQMLから呼び出すことができます。Q_INVOKABLE を参照してください。

[override virtual] QAbstractSeries::SeriesType QBarSeries::type() const

プロパティ「QAbstractSeries::type 」のアクセス関数を再実装します。

棒グラフの系列を返します。

[signal] void QBarSeries::updatedBars()

このシグナルは、バーが更新されたときに発生します。

© 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.