이 페이지에서

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()

상세 설명

이 클래스는 기본적으로 데이터를 범주별로 그룹화된 막대 차트 시리즈로 그리며, 각 막대 세트의 범주당 하나의 막대가 시리즈에 추가됩니다. 또한 가로 막대 차트와 쌓인 형태의 막대 차트 그룹화도 지원합니다.

막대 시리즈를 사용하려면 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이 값은 막대가 선택된 경우 true이며, 이는 막대 인덱스가 ` QBarSet::selectedBars`에 포함되어 있음을 의미합니다.
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)

알림 신호:

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)

알림 신호:

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

라벨의 표시 여부를 반환합니다.

참고: 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)

이 신호는 바셋(barset)의 값이 변경될 때 발생합니다. ` index `는 시퀀스 내 바셋의 인덱스입니다. 추가된 값의 개수는 ` count`에 표시됩니다. ` barset `는 변경된 바셋을 가리키는 포인터입니다.

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

이 신호는 바셋(barset)의 값이 변경될 때 발생합니다. ` index `는 시계열 내 바셋의 인덱스입니다. ` barset `는 변경된 바셋을 가리키는 포인터입니다.

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

이 신호는 바셋(barset)의 값이 변경될 때 발생합니다. ` index `는 시퀀스 내 바셋의 인덱스입니다. 제거된 값의 개수는 ` count`에 표시됩니다. ` barset `는 변경된 세트를 가리키는 포인터입니다.

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

시리즈에서 단일 막대 set 를 가져옵니다. 막대 세트 객체는 삭제하지 않습니다.

참고: 시리즈는 바 세트의 상위 객체로 유지됩니다. 완전한 소유권을 확보하려면 상위 객체를 설정해야 합니다.

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.