이 페이지에서

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

공개 유형

(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::None0angleSpanVisibleLimit 보다 각도 범위가 작은 슬라이스의 모든 레이블이 숨겨집니다.
QPieSeries::LabelVisibility::First1angleSpanVisibleLimit 보다 각도 범위가 작은 연속 슬라이스의 첫 번째 레이블을 제외한 모든 레이블이 숨겨집니다. 이것이 기본값입니다.
QPieSeries::LabelVisibility::Even2angleSpanVisibleLimit 보다 각도 범위가 작은 연속된 슬라이스의 레이블 중 두 번째 레이블부터 시작하여 한 개 건너마다 레이블이 숨겨집니다.
QPieSeries::LabelVisibility::Odd3angleSpanVisibleLimit 보다 각도 범위가 작은 연속된 슬라이스의 레이블 중 첫 번째 레이블부터 시작하여 매 두 번째 레이블이 숨겨집니다.

이 열거형은 Qt 6.10에서 도입되었습니다.

QPieSeries::angleSpanVisibleLimit도 참조하십시오 .

속성 문서

[since 6.10] angleSpanLabelVisibility : LabelVisibility

이 속성은 레이블 표시 여부를 결정하는 모드를 지정합니다.

angleSpanVisibleLimit 로 설정된 각도 범위 제한 내에 있는 레이블 중 어떤 레이블이 숨겨질지를 결정하는 모드입니다. angleSpanVisibleLimit 가 설정되지 않은 경우에는 효과가 없습니다.

이 열거형은 Qt 6.10에서 도입되었습니다.

액세스 함수:

QPieSeries::LabelVisibility angleSpanLabelVisibility() const
void setAngleSpanLabelVisibility(QPieSeries::LabelVisibility newAngleSpanVisibleMode)

알림 신호:

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)

알림 신호:

void angleSpanVisibleLimitChanged(qreal limit)

QPieSeries::angleSpanLabelVisibility도 참조하십시오 .

[read-only] count : qsizetype

이 속성은 시리얼의 슬라이스 수를 나타냅니다.

액세스 함수:

qsizetype count() const

알림 신호:

void countChanged()

endAngle : qreal

이 속성은 파이(circle)의 끝 각도를 나타냅니다.

원형 차트의 전체 각도는 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은 최소 파이 크기(파이 차트가 그려지지 않음)입니다.
  • 1.0은 그래프에 들어갈 수 있는 최대 파이 크기입니다.

이 속성을 설정하면, 구멍 크기가 파이 크기보다 커지지 않도록 필요에 따라 ` holeSize ` 속성이 조정됩니다.

기본값은 0.7입니다.

액세스 함수:

qreal pieSize() const
void setPieSize(qreal relativeSize)

알림 신호:

void pieSizeChanged()

[since 6.12] sliceData : QList<qreal>

선언적 슬라이스 값.

이 속성을 설정하면 선언적 방식으로 파이 차트의 슬라이스를 생성할 수 있습니다. 시리즈는 값 하나당 슬라이스 하나를 자동으로 생성합니다. 레이블은 ` 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 로 지정된 단일 슬라이스를 시퀀스에서 제거하고 영구적으로 삭제합니다.

이 호출 후에는 해당 포인터를 참조할 수 없습니다.

제거에 성공하면 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.