Auf dieser Seite

QChart Class

Die Klasse „QChart“ verwaltet die grafische Darstellung der Zeitreihen, Legenden und Achsen des Diagramms. Mehr...

Header: #include <QChart>
Inherits: QGraphicsWidget
Inherited By:

QPolarChart

Status: Deprecated

Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Öffentliche Typen

enum AnimationOption { NoAnimation, GridAxisAnimations, SeriesAnimations, AllAnimations }
flags AnimationOptions
enum ChartTheme { ChartThemeLight, ChartThemeBlueCerulean, ChartThemeDark, ChartThemeBrownSand, ChartThemeBlueNcs, …, ChartThemeQt }
enum ChartType { ChartTypeUndefined, ChartTypeCartesian, ChartTypePolar }

Eigenschaften

Öffentliche Funktionen

QChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags())
virtual ~QChart()
void addAxis(QAbstractAxis *axis, Qt::Alignment alignment)
void addSeries(QAbstractSeries *series)
int animationDuration() const
QEasingCurve animationEasingCurve() const
QChart::AnimationOptions animationOptions() const
QList<QAbstractAxis *> axes(Qt::Orientations orientation = Qt::Horizontal|Qt::Vertical, QAbstractSeries *series = nullptr) const
QBrush backgroundBrush() const
QPen backgroundPen() const
qreal backgroundRoundness() const
QChart::ChartType chartType() const
void createDefaultAxes()
bool isBackgroundVisible() const
bool isDropShadowEnabled() const
bool isPlotAreaBackgroundVisible() const
bool isZoomed()
QLegend *legend() const
QLocale locale() const
bool localizeNumbers() const
QPointF mapToPosition(const QPointF &value, QAbstractSeries *series = nullptr)
QPointF mapToValue(const QPointF &position, QAbstractSeries *series = nullptr)
QMargins margins() const
QRectF plotArea() const
QBrush plotAreaBackgroundBrush() const
QPen plotAreaBackgroundPen() const
void removeAllSeries()
void removeAxis(QAbstractAxis *axis)
void removeSeries(QAbstractSeries *series)
void scroll(qreal dx, qreal dy)
QList<QAbstractSeries *> series() const
void setAnimationDuration(int msecs)
void setAnimationEasingCurve(const QEasingCurve &curve)
void setAnimationOptions(QChart::AnimationOptions options)
void setBackgroundBrush(const QBrush &brush)
void setBackgroundPen(const QPen &pen)
void setBackgroundRoundness(qreal diameter)
void setBackgroundVisible(bool visible = true)
void setDropShadowEnabled(bool enabled = true)
void setLocale(const QLocale &locale)
void setLocalizeNumbers(bool localize)
void setMargins(const QMargins &margins)
void setPlotArea(const QRectF &rect)
void setPlotAreaBackgroundBrush(const QBrush &brush)
void setPlotAreaBackgroundPen(const QPen &pen)
void setPlotAreaBackgroundVisible(bool visible = true)
void setTheme(QChart::ChartTheme theme)
void setTitle(const QString &title)
void setTitleBrush(const QBrush &brush)
void setTitleFont(const QFont &font)
QChart::ChartTheme theme() const
QString title() const
QBrush titleBrush() const
QFont titleFont() const
void zoom(qreal factor)
void zoomIn()
void zoomIn(const QRectF &rect)
void zoomOut()
void zoomReset()

Signale

void plotAreaChanged(const QRectF &plotArea)

Ausführliche Beschreibung

QChart ist eine „ QGraphicsWidget “, die Sie in einem „ QGraphicsScene “ anzeigen können. Sie verwaltet die grafische Darstellung verschiedener Serienarten und anderer diagrammbezogener Objekte wie Legenden und Achsen. Um ein Diagramm einfach in einem Layout darzustellen, kann anstelle von QChart die Komfortklasse „ QChartView “ verwendet werden. Darüber hinaus können Linien-, Spline-, Flächen- und Streudiagramme mithilfe der Klasse „ QPolarChart “ als Polardiagramme dargestellt werden.

Siehe auch QChartView und QPolarChart.

Dokumentation zu Mitgliedstypen

enum QChart::AnimationOption
flags QChart::AnimationOptions

Diese Enumeration beschreibt die im Diagramm aktivierten Animationen.

KonstanteWertBeschreibung
QChart::NoAnimation0x0Die Animation ist im Diagramm deaktiviert. Dies ist der Standardwert.
QChart::GridAxisAnimations0x1Die Animation der Gitterachsen ist im Diagramm aktiviert.
QChart::SeriesAnimations0x2Die Animation der Reihen ist im Diagramm aktiviert.
QChart::AllAnimations0x3Alle Animationstypen sind im Diagramm aktiviert.

Der Typ „AnimationOptions“ ist ein typedef für QFlags<AnimationOption>. Er speichert eine ODER-Kombination von „AnimationOption“-Werten.

enum QChart::ChartTheme

Diese Enumeration beschreibt das vom Diagramm verwendete Design.

Ein Design ist eine integrierte Sammlung von Einstellungen zum UI-Stil, die auf alle visuellen Elemente eines Diagramms angewendet werden, wie z. B. Farben, Stifte, Pinsel und Schriftarten der Reihen sowie Achsen, Titel und Legende. Die Galerie „Diagramme mit Widgets“ veranschaulicht die Verwendung von Designs.

Hinweis: Durch das Ändern des Designs werden alle zuvor auf die Reihen angewendeten Anpassungen überschrieben.

KonstanteWertBeschreibung
QChart::ChartThemeLight0Das helle Design, das als Standarddesign dient.
QChart::ChartThemeBlueCerulean1Das ceruleanblaue Design.
QChart::ChartThemeDark2Das dunkle Design.
QChart::ChartThemeBrownSand3Das sandbraune Design.
QChart::ChartThemeBlueNcs4Das blaue Design nach dem Natural Color System (NCS).
QChart::ChartThemeHighContrast5Das kontrastreiche Design.
QChart::ChartThemeBlueIcy6Das eisblaue Design.
QChart::ChartThemeQt7Das Qt-Design.

enum QChart::ChartType

Diese Enumeration beschreibt den Diagrammtyp.

KonstanteWertBeschreibung
QChart::ChartTypeUndefined0Der Diagrammtyp ist nicht definiert.
QChart::ChartTypeCartesian1Ein kartesisches Diagramm.
QChart::ChartTypePolar2Ein Polardiagramm.

Dokumentation zu den Eigenschaften

animationDuration : int

Diese Eigenschaft gibt die Dauer der Animation für das Diagramm an.

Zugriffsfunktionen:

int animationDuration() const
void setAnimationDuration(int msecs)

animationEasingCurve : QEasingCurve

Diese Eigenschaft enthält die Beschleunigungskurve der Animation für das Diagramm.

Zugriffsfunktionen:

QEasingCurve animationEasingCurve() const
void setAnimationEasingCurve(const QEasingCurve &curve)

animationOptions : QChart::AnimationOptions

Diese Eigenschaft enthält die Animationsoptionen für das Diagramm.

Je nach dieser Einstellung werden Animationen aktiviert oder deaktiviert.

Zugriffsfunktionen:

QChart::AnimationOptions animationOptions() const
void setAnimationOptions(QChart::AnimationOptions options)

backgroundRoundness : qreal

Diese Eigenschaft gibt den Durchmesser des Abrundungskreises an den Ecken des Diagrammhintergrunds an.

Zugriffsfunktionen:

qreal backgroundRoundness() const
void setBackgroundRoundness(qreal diameter)

backgroundVisible : bool

Diese Eigenschaft legt fest, ob der Hintergrund des Diagramms sichtbar ist.

Zugriffsfunktionen:

bool isBackgroundVisible() const
void setBackgroundVisible(bool visible = true)

Siehe auch setBackgroundBrush(), setBackgroundPen() und plotAreaBackgroundVisible.

[read-only] chartType : QChart::ChartType

Diese Eigenschaft gilt unabhängig davon, ob es sich bei dem Diagramm um ein kartesisches oder ein polares Diagramm handelt.

Diese Eigenschaft wird intern festgelegt und ist schreibgeschützt.

Zugriffsfunktionen:

QChart::ChartType chartType() const

Siehe auch „ QPolarChart “.

dropShadowEnabled : bool

Diese Eigenschaft legt fest, ob der Hintergrund-Schlagschatteneffekt aktiviert ist.

Bei der Einstellung „ true “ ist der Hintergrund-Schlagschatteneffekt aktiviert. Bei der Einstellung „ false “ ist er deaktiviert.

Hinweis: Der Schlagschatten-Effekt hängt vom Design ab, daher kann sich die Einstellung ändern, wenn das Design gewechselt wird.

Zugriffsfunktionen:

bool isDropShadowEnabled() const
void setDropShadowEnabled(bool enabled = true)

locale : QLocale

Diese Eigenschaft enthält die Ländereinstellung, die zur Formatierung verschiedener Diagrammbeschriftungen verwendet wird.

Beschriftungen werden nur dann lokalisiert, wenn „ localizeNumbers “ auf „ true “ gesetzt ist, mit Ausnahme der QDateTimeAxis-Beschriftungen, die immer die mit dieser Eigenschaft festgelegte „ QLocale “ verwenden.

Standardmäßig wird die Standard-Lokalisierung der Anwendung zum Zeitpunkt der Erstellung des Diagramms verwendet.

Zugriffsfunktionen:

QLocale locale() const
void setLocale(const QLocale &locale)

Siehe auch ` localizeNumbers`.

localizeNumbers : bool

Diese Eigenschaft gilt unabhängig davon, ob Zahlen lokalisiert sind.

Wenn „ true “ ist, werden alle generierten Zahlen, die in verschiedenen Reihen und Achsenbeschriftungen erscheinen, unter Verwendung der mit der Eigenschaft „ locale “ festgelegten „ QLocale “ lokalisiert. Wenn „ false “ ist, wird immer die Locale „C“ verwendet. Der Standardwert ist „ false “.

Hinweis: Diese Eigenschaft hat keine Auswirkungen auf QDateTimeAxis-Beschriftungen, die stets die mit der Eigenschaft „locale“ festgelegte „ QLocale “ verwenden.

Zugriffsfunktionen:

bool localizeNumbers() const
void setLocalizeNumbers(bool localize)

Siehe auch „ locale “.

margins : QMargins

Diese Eigenschaft legt die zulässigen Mindestränder zwischen dem Rand des Diagrammrechtecks und dem Darstellungsbereich fest.

Die Ränder werden zum Zeichnen des Titels, der Achsen und der Legende verwendet.

Zugriffsfunktionen:

QMargins margins() const
void setMargins(const QMargins &margins)

plotArea : QRectF

Diese Eigenschaft legt das Rechteck fest, innerhalb dessen das Diagramm gezeichnet wird.

Der Darstellungsbereich umfasst nicht den durch die Ränder definierten Bereich. Standardmäßig passt sich die Größe automatisch an, wenn sich das Diagramm innerhalb einer `QChartView` befindet. Wenn eine explizite Größe für den Darstellungsbereich festgelegt wurde, wird diese berücksichtigt. Um zum Standardverhalten zurückzukehren, rufen Sie einfach ` setPlotArea(QRectF()); ` auf.

Zugriffsfunktionen:

QRectF plotArea() const
void setPlotArea(const QRectF &rect)

Notifier-Signal:

void plotAreaChanged(const QRectF &plotArea)

plotAreaBackgroundVisible : bool

Diese Eigenschaft legt fest, ob der Hintergrund des Diagrammbereichs sichtbar ist.

Hinweis: Standardmäßig ist der Hintergrund des Diagrammbereichs unsichtbar, und der Diagrammbereich verwendet den allgemeinen Diagrammhintergrund.

Zugriffsfunktionen:

bool isPlotAreaBackgroundVisible() const
void setPlotAreaBackgroundVisible(bool visible = true)

Siehe auch setPlotAreaBackgroundBrush(), setPlotAreaBackgroundPen() und backgroundVisible.

theme : QChart::ChartTheme

Diese Eigenschaft enthält das für das Diagramm verwendete Thema.

Zugriffsfunktionen:

QChart::ChartTheme theme() const
void setTheme(QChart::ChartTheme theme)

title : QString

Diese Eigenschaft enthält den Titel des Diagramms.

Der Titel wird als Überschrift oben im Diagramm angezeigt. Diagrammtitel unterstützen HTML-Formatierungen.

Zugriffsfunktionen:

QString title() const
void setTitle(const QString &title)

Dokumentation zu Member-Funktionen

[explicit] QChart::QChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags())

Erstellt ein Diagrammobjekt, das ein untergeordnetes Element von „ parent “ ist. Die durch „ wFlags “ angegebenen Eigenschaften werden an den Konstruktor von „ QGraphicsWidget “ übergeben.

[virtual noexcept] QChart::~QChart()

Löscht das Diagrammobjekt und seine untergeordneten Elemente, wie beispielsweise die ihm hinzugefügten Reihen- und Achsenobjekte.

void QChart::addAxis(QAbstractAxis *axis, Qt::Alignment alignment)

Fügt dem Diagramm die Achse „ axis “ hinzu, die gemäß den Angaben unter „ alignment “ ausgerichtet wird. Das Diagramm übernimmt die Verantwortung für die Achse.

Siehe auch removeAxis(), createDefaultAxes() und QAbstractSeries::attachAxis().

void QChart::addSeries(QAbstractSeries *series)

Fügt die Reihe „ series “ zum Diagramm hinzu und übernimmt die Verantwortung dafür.

Hinweis: Eine neu hinzugefügte Reihe ist standardmäßig an keine Achsen gebunden, auch nicht an solche, die möglicherweise vor dem Hinzufügen der Reihe zum Diagramm mit ` createDefaultAxes()` für das Diagramm erstellt wurden. Wenn der neu hinzugefügten Reihe vor der Anzeige des Diagramms keine Achsen zugeordnet sind, wird die Reihe so gezeichnet, als hätte sie Achsen mit Bereichen, die genau zur Reihe und zum Darstellungsbereich des Diagramms passen. Dies kann verwirrend sein, wenn dasselbe Diagramm auch andere Reihen anzeigt, denen Achsen ordnungsgemäß zugeordnet sind. Stellen Sie daher stets sicher, dass Sie entweder nach dem Hinzufügen einer Reihe ` createDefaultAxes()` aufrufen oder der Reihe explizit Achsen zuweisen.

Siehe auch removeSeries(), removeAllSeries(), createDefaultAxes() und QAbstractSeries::attachAxis().

QList<QAbstractAxis *> QChart::axes(Qt::Orientations orientation = Qt::Horizontal|Qt::Vertical, QAbstractSeries *series = nullptr) const

Gibt die Achsen zurück, die an die Reihe series angehängt sind und deren Ausrichtung durch orientation festgelegt ist. Wenn keine Reihe angegeben ist, werden alle Achsen zurückgegeben, die dem Diagramm mit der angegebenen Ausrichtung hinzugefügt wurden.

Siehe auch addAxis() und createDefaultAxes().

QBrush QChart::backgroundBrush() const

Ruft den Pinsel ab, der zum Ausmalen des Hintergrunds des Diagrammbereichs verwendet wird.

Siehe auch ` setBackgroundBrush()`.

QPen QChart::backgroundPen() const

Ruft den Stift ab, der zum Ausmalen des Hintergrunds des Diagrammbereichs verwendet wird.

Siehe auch setBackgroundPen().

void QChart::createDefaultAxes()

Erstellt Achsen für das Diagramm auf der Grundlage der Reihen, die dem Diagramm bereits hinzugefügt wurden. Alle zuvor zum Diagramm hinzugefügten Achsen werden gelöscht.

Hinweis: Diese Funktion muss aufgerufen werden, nachdem alle Reihen zum Diagramm hinzugefügt wurden. Die durch diese Funktion erstellten Achsen werden NICHT automatisch an Reihen angehängt, die dem Diagramm nach dem Aufruf dieser Funktion hinzugefügt werden. Eine Reihe ohne zugeordnete Achsen wird standardmäßig so skaliert, dass sie den gesamten Darstellungsbereich des Diagramms ausfüllt, was verwirrend sein kann, wenn andere Reihen mit korrekt zugeordneten Achsen ebenfalls vorhanden sind.

ReihenartHorizontale Achse (X)Vertikale Achse (Y)
QXYSeriesQValueAxisQValueAxis
QBar-ReiheQBar-KategorieachseQWert-Achse
QPieSeriesKeineKeine

Wenn dem Diagramm mehrere von QXYSeries abgeleitete Reihen hinzugefügt wurden und keine Reihen anderer Typen hinzugefügt wurden, wird nur ein Achsenpaar erstellt. Wenn dem Diagramm mehrere Reihen unterschiedlicher Typen hinzugefügt wurden, erhält jede Reihe ihr eigenes Achsenpaar.

Die für die Reihe spezifischen Achsen können später aus dem Diagramm abgerufen werden, indem die Reihe als Parameter für den Funktionsaufruf ` axes()` übergeben wird. `QPieSeries` erstellt keine Achsen.

Siehe auch „ axes()“ und „ QAbstractSeries::attachAxis()“.

bool QChart::isZoomed()

Gibt „ true “ zurück, wenn eine der Reihen einen gezoomten Definitionsbereich hat.

QLegend *QChart::legend() const

Gibt das Legendenobjekt des Diagramms zurück. Das Eigentumsrecht verbleibt beim Diagramm.

QPointF QChart::mapToPosition(const QPointF &value, QAbstractSeries *series = nullptr)

Gibt die Position im Diagramm zurück, die dem Wert „ value “ in der durch „ series “ angegebenen Reihe entspricht.

QPointF QChart::mapToValue(const QPointF &position, QAbstractSeries *series = nullptr)

Gibt den Wert in der durch „ series “ angegebenen Reihe an der durch „ position “ angegebenen Position in einem Diagramm zurück.

QBrush QChart::plotAreaBackgroundBrush() const

Gibt den Pinsel zurück, der zum Ausfüllen des Hintergrunds des Darstellungsbereichs des Diagramms verwendet wurde.

Siehe auch plotArea(), plotAreaBackgroundVisible, plotAreaBackgroundPen() und setPlotAreaBackgroundBrush().

QPen QChart::plotAreaBackgroundPen() const

Gibt den Stift zurück, der zum Zeichnen des Hintergrunds des Darstellungsbereichs des Diagramms verwendet wurde.

Siehe auch plotArea(), plotAreaBackgroundVisible, plotAreaBackgroundBrush() und setPlotAreaBackgroundPen().

void QChart::removeAllSeries()

Entfernt und löscht alle Serienobjekte, die dem Diagramm hinzugefügt wurden.

Siehe auch addSeries() und removeSeries().

void QChart::removeAxis(QAbstractAxis *axis)

Entfernt die Achse „ axis “ aus dem Diagramm. Das Diagramm gibt die Verwaltung des angegebenen Objekts „ axis “ frei.

Siehe auch „ addAxis()“, „ createDefaultAxes()“ und „ QAbstractSeries::detachAxis()“.

void QChart::removeSeries(QAbstractSeries *series)

Entfernt die Serie „ series “ aus dem Diagramm. Das Diagramm gibt die Verknüpfung mit dem angegebenen „ series “-Objekt frei.

Siehe auch „ addSeries()“ und „ removeAllSeries()“.

void QChart::scroll(qreal dx, qreal dy)

Blättert den sichtbaren Bereich des Diagramms um den Abstand, der durch „ dx “ und „ dy “ festgelegt ist.

Bei Polardiagrammen gibt „ dx “ anstelle der Entfernung den Winkel entlang der Winkelachse an.

QList<QAbstractSeries *> QChart::series() const

Gibt alle Reihen zurück, die dem Diagramm hinzugefügt wurden.

Siehe auch addSeries(), removeSeries() und removeAllSeries().

void QChart::setBackgroundBrush(const QBrush &brush)

Legt den Pinsel fest, der zum Ausmalen des Hintergrunds des Diagrammbereichs verwendet wird, auf „ brush “.

Siehe auch backgroundBrush().

void QChart::setBackgroundPen(const QPen &pen)

Legt den Stift fest, der zum Ausfüllen des Hintergrunds des Diagrammbereichs verwendet wird, auf „ pen “.

Siehe auch „ backgroundPen()“.

void QChart::setPlotAreaBackgroundBrush(const QBrush &brush)

Legt den Pinsel fest, der zum Ausfüllen des Hintergrunds des Darstellungsbereichs des Diagramms verwendet wird, auf „ brush “.

Siehe auch „ plotArea()“, „ plotAreaBackgroundVisible “, „ setPlotAreaBackgroundPen()“ und „ plotAreaBackgroundBrush()“.

void QChart::setPlotAreaBackgroundPen(const QPen &pen)

Legt den Stift fest, der zum Zeichnen des Hintergrunds des Darstellungsbereichs des Diagramms verwendet wird, auf „ pen “.

Siehe auch „ plotArea()“, „ plotAreaBackgroundVisible “, „ setPlotAreaBackgroundBrush()“ und „ plotAreaBackgroundPen()“.

void QChart::setTitleBrush(const QBrush &brush)

Legt den Pinsel fest, der zum Zeichnen des Titeltextes verwendet wird: „ brush “.

Siehe auch „ titleBrush()“.

void QChart::setTitleFont(const QFont &font)

Legt die Schriftart fest, die für die Darstellung des Diagrammtitels verwendet wird: „ font “.

Siehe auch titleFont().

QBrush QChart::titleBrush() const

Gibt den Pinsel zurück, der zum Zeichnen des Titeltextes verwendet wurde.

Siehe auch „ setTitleBrush()“.

QFont QChart::titleFont() const

Ruft die Schriftart ab, die zum Zeichnen des Diagrammtitels verwendet wird.

Siehe auch ` setTitleFont()`.

void QChart::zoom(qreal factor)

Vergrößert die Ansicht um den benutzerdefinierten Faktor factor.

Ein Faktor über 1,0 vergrößert die Ansicht, ein Faktor zwischen 0,0 und 1,0 verkleinert sie.

void QChart::zoomIn()

Vergrößert die Ansicht um das Doppelte.

void QChart::zoomIn(const QRectF &rect)

Vergrößert die Ansicht auf die maximale Ebene, bei der das Rechteck rect noch vollständig sichtbar ist.

Hinweis: Das Anwenden eines Zooms kann die Eigenschaften der zugehörigen Achsen verändern, beispielsweise QAbstractAxis::min und QAbstractAxis::max.

Hinweis: Dies wird bei Polardiagrammen nicht unterstützt.

void QChart::zoomOut()

Verkleinert die Ansicht um den Faktor zwei.

Hinweis: Dies hat keine Auswirkung, wenn das Ergebnis einen ungültigen logarithmischen Achsenbereich enthalten würde.

void QChart::zoomReset()

Setzt die Seriendomänen auf den Zustand zurück, der vor dem Aufruf einer beliebigen Zoom-Methode bestand.

Hinweis: Dadurch werden auch die Einstellungen für das Scrollen und explizite Achsbereiche zurückgesetzt, die zwischen dem ersten Zoomvorgang und dem Aufruf dieser Methode festgelegt wurden. Wenn kein Zoomvorgang durchgeführt wurde, hat diese Methode keine Auswirkung.

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