QChart Class

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

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

QPolarChart

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

Detaillierte Beschreibung

QChart ist ein QGraphicsWidget, das Sie in einem QGraphicsScene anzeigen können. Es verwaltet die grafische Darstellung verschiedener Typen von Reihen und anderen Diagrammobjekten wie Legende und Achsen. Um ein Diagramm einfach in einem Layout darzustellen, kann die Komfortklasse QChartView anstelle von QChart verwendet werden. Außerdem können Linien-, Spline-, Flächen- und Streuungsreihen als Polardiagramme dargestellt werden, indem die Klasse QPolarChart verwendet wird.

Siehe auch QChartView und QPolarChart.

Dokumentation der Mitgliedstypen

enum QChart::AnimationOption
flags QChart::AnimationOptions

Diese Aufzählung beschreibt die im Diagramm aktivierten Animationen.

KonstanteWertBeschreibung
QChart::NoAnimation0x0Die Animation ist im Diagramm deaktiviert. Dies ist der Standardwert.
QChart::GridAxisAnimations0x1Die Gitterachsenanimation ist im Diagramm aktiviert.
QChart::SeriesAnimations0x2Die Serienanimation 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 Aufzählung beschreibt das von dem Diagramm verwendete Thema.

Ein Thema ist eine integrierte Sammlung von UI-Stil-bezogenen Einstellungen, die auf alle visuellen Elemente eines Diagramms angewendet werden, wie z. B. Farben, Stifte, Pinsel und Schriftarten von Reihen, sowie Achsen, Titel und Legende. Die Galerie Diagramme mit Widgets veranschaulicht, wie Themen verwendet werden können.

Hinweis: Wenn Sie das Thema ändern, werden alle zuvor auf die Serie angewendeten Anpassungen überschrieben.

KonstanteWertBeschreibung
QChart::ChartThemeLight0Das helle Thema, das Standardthema.
QChart::ChartThemeBlueCerulean1Das azurblaue Thema.
QChart::ChartThemeDark2Das dunkle Thema.
QChart::ChartThemeBrownSand3Das Thema Sandbraun.
QChart::ChartThemeBlueNcs4Das blaue Thema des natürlichen Farbsystems (NCS).
QChart::ChartThemeHighContrast5Das Thema "Hoher Kontrast".
QChart::ChartThemeBlueIcy6Das Thema Eisblau.
QChart::ChartThemeQt7Das Qt-Thema.

enum QChart::ChartType

Diese Aufzählung beschreibt den Diagrammtyp.

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

Eigenschaft Dokumentation

animationDuration : int

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

Zugriffsfunktionen:

int animationDuration() const
void setAnimationDuration(int msecs)

animationEasingCurve : QEasingCurve

Diese Eigenschaft enthält die Lockerungskurve 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.

Animationen werden auf der Grundlage dieser Einstellung aktiviert oder deaktiviert.

Zugriffsfunktionen:

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

backgroundRoundness : qreal

Diese Eigenschaft enthält den Durchmesser des Rundungskreises an den Ecken des Diagrammhintergrunds.

Zugriffsfunktionen:

qreal backgroundRoundness() const
void setBackgroundRoundness(qreal diameter)

backgroundVisible : bool

Diese Eigenschaft gibt an, 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 : const QChart::ChartType

Diese Eigenschaft gibt an, ob das Diagramm ein kartesisches Diagramm oder ein Polardiagramm ist.

Diese Eigenschaft wird intern gesetzt und ist nur lesbar.

Zugriffsfunktionen:

QChart::ChartType chartType() const

Siehe auch QPolarChart.

dropShadowEnabled : bool

Diese Eigenschaft gibt an, ob der Schlagschatteneffekt im Hintergrund aktiviert ist.

Wenn sie auf true gesetzt ist, ist der Hintergrundschatteneffekt aktiviert. Bei einem Wert von false ist er deaktiviert.

Hinweis: Der Schlagschatteneffekt hängt vom Thema ab, daher kann sich die Einstellung ändern, wenn das Thema geändert wird.

Zugriffsfunktionen:

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

locale : QLocale

Diese Eigenschaft enthält das Gebietsschema, das für die Formatierung verschiedener Diagrammbeschriftungen verwendet wird.

Beschriftungen werden nur lokalisiert, wenn localizeNumbers true ist, mit Ausnahme von QDateTimeAxis Beschriftungen, die immer die mit dieser Eigenschaft eingestellte QLocale verwenden.

Der Standardwert ist das Standardgebietsschema der Anwendung, wenn das Diagramm erstellt wird.

Zugriffsfunktionen:

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

Siehe auch localizeNumbers.

localizeNumbers : bool

Diese Eigenschaft legt fest, ob Zahlen lokalisiert werden.

Bei true werden alle generierten Zahlen, die in verschiedenen Serien und Achsenbeschriftungen erscheinen, unter Verwendung der QLocale mit der Eigenschaft locale lokalisiert. Wenn false, wird immer das Gebietsschema C verwendet. Die Voreinstellung ist false.

Hinweis: Diese Eigenschaft wirkt sich nicht auf die Beschriftungen von QDateTimeAxis aus, die immer die mit der Eigenschaft locale eingestellte QLocale verwenden.

Zugriffsfunktionen:

bool localizeNumbers() const
void setLocalizeNumbers(bool localize)

Siehe auch locale.

margins : QMargins

Diese Eigenschaft enthält die Mindestränder, die zwischen dem Rand des Diagrammrechtecks und dem Plotbereich zulässig sind.

Die Ränder werden für das Zeichnen des Titels, der Achsen und der Legende verwendet.

Zugriffsfunktionen:

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

plotArea : QRectF

Diese Eigenschaft enthält das Rechteck, innerhalb dessen das Diagramm gezeichnet wird.

Der Darstellungsbereich umfasst nicht den durch Ränder definierten Bereich. Standardmäßig wird die Größe angepasst, wenn er sich innerhalb von QChartView befindet. Wenn eine explizite Größe für den Darstellungsbereich festgelegt wurde, wird diese beachtet; um zum Standardverhalten zurückzukehren, kann dies durch den Aufruf von setPlotArea(QRectF()); erreicht werden.

Zugriffsfunktionen:

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

Benachrichtigungssignal:

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 Plotbereichs unsichtbar und der Plotbereich 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 am oberen Rand des Diagramms angezeigt. Diagrammtitel unterstützen die HTML-Formatierung.

Zugriffsfunktionen:

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

Dokumentation der Mitgliedsfunktionen

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

Konstruiert ein Diagrammobjekt, das ein untergeordnetes Objekt von parent ist. Die von wFlags angegebenen Eigenschaften werden an den Konstruktor von QGraphicsWidget übergeben.

[virtual noexcept] QChart::~QChart()

Löscht das Diagrammobjekt und seine untergeordneten Objekte, wie z. B. die ihm hinzugefügten Serien- und Achsenobjekte.

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

Fügt dem Diagramm die Achse axis in der durch alignment angegebenen Ausrichtung hinzu. Das Diagramm übernimmt den Besitz der Achse.

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

void QChart::addSeries(QAbstractSeries *series)

Fügt die Serie series zum Diagramm hinzu und übernimmt die Verantwortung für sie.

Hinweis: Eine neu hinzugefügte Serie ist standardmäßig an keine Achsen gebunden, auch nicht an solche, die möglicherweise mit createDefaultAxes() für das Diagramm erstellt wurden, bevor die Serie dem Diagramm hinzugefügt wurde. Wenn der neu hinzugefügten Serie keine Achsen zugeordnet sind, bevor das Diagramm angezeigt wird, wird die Serie so gezeichnet, als ob sie Achsen mit Bereichen hätte, die genau in den Plotbereich des Diagramms passen. Dies kann verwirrend sein, wenn das gleiche Diagramm auch andere Serien anzeigt, die korrekt zugeordnete Achsen haben. Stellen Sie daher immer sicher, dass Sie entweder createDefaultAxes() aufrufen, nachdem eine Serie hinzugefügt wurde, oder explizit Achsen für die Serie zuordnen.

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 der Serie series mit der durch orientation angegebenen Ausrichtung zugeordnet sind. Wenn keine Serie angegeben ist, werden alle dem Diagramm hinzugefügten Achsen mit der angegebenen Ausrichtung zurückgegeben.

Siehe auch addAxis() und createDefaultAxes().

QBrush QChart::backgroundBrush() const

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

Siehe auch setBackgroundBrush().

QPen QChart::backgroundPen() const

Ruft den Stift ab, der für das Malen des Hintergrunds des Diagrammbereichs verwendet wird.

Siehe auch setBackgroundPen().

void QChart::createDefaultAxes()

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

Hinweis: Diese Funktion muss aufgerufen werden, nachdem alle Serien zum Diagramm hinzugefügt wurden. Die durch diese Funktion erstellten Achsen werden NICHT automatisch an Serien angehängt, die dem Diagramm nach dem Aufruf dieser Funktion hinzugefügt wurden. Eine Serie ohne angehängte Achsen wird standardmäßig so skaliert, dass sie den gesamten Plotbereich des Diagramms ausnutzt, was verwirrend sein kann, wenn auch andere Serien mit korrekt angehängten Achsen vorhanden sind.

Typ der ReiheHorizontale Achse (X)Vertikale Achse (Y)
QXYSeriesQValueAxisQValueAxis
QBarSeriesQBarCategoryAxisQValueAxis
QPieSeriesKeineKeine

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

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

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

bool QChart::isZoomed()

Gibt true zurück, wenn eine Reihe einen gezoomten Bereich hat.

QLegend *QChart::legend() const

Gibt das Legendenobjekt des Diagramms zurück. Die Eigentümerschaft bleibt 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 Füllen des Hintergrunds des Diagrammbereichs verwendet wird.

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

QPen QChart::plotAreaBackgroundPen() const

Gibt den Stift zurück, der zum Zeichnen des Hintergrunds des Diagrammbereichs 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 Eigentümerschaft für das angegebene axis Objekt frei.

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

void QChart::removeSeries(QAbstractSeries *series)

Entfernt die Serie series aus dem Diagramm. Das Diagramm gibt die Eigentümerschaft für das angegebene series Objekt frei.

Siehe auch addSeries() und removeAllSeries().

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

Verschiebt den sichtbaren Bereich des Diagramms um den durch dx und dy angegebenen Abstand.

Bei Polardiagrammen gibt dx anstelle des Abstands den Winkel entlang der Winkelachse an.

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

Liefert alle Serien, die dem Diagramm hinzugefügt wurden.

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

void QChart::setBackgroundBrush(const QBrush &brush)

Setzt den Pinsel, der für das Malen des Hintergrunds des Diagrammbereichs verwendet wird, auf brush.

Siehe auch backgroundBrush().

void QChart::setBackgroundPen(const QPen &pen)

Setzt den Stift, der zum Malen des Hintergrunds des Diagrammbereichs verwendet wird, auf pen.

Siehe auch backgroundPen().

void QChart::setPlotAreaBackgroundBrush(const QBrush &brush)

Setzt den Pinsel, der zum Füllen des Hintergrunds des Diagrammbereichs verwendet wird, auf brush.

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

void QChart::setPlotAreaBackgroundPen(const QPen &pen)

Setzt den Stift, mit dem der Hintergrund des Diagrammbereichs gezeichnet wird, auf pen.

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

void QChart::setTitleBrush(const QBrush &brush)

Setzt den Pinsel, der zum Zeichnen des Titeltextes verwendet wird, auf brush.

Siehe auch titleBrush().

void QChart::setTitleFont(const QFont &font)

Setzt die Schriftart, die zum Zeichnen des Diagrammtitels verwendet wird, auf font.

Siehe auch titleFont().

QBrush QChart::titleBrush() const

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

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.

Mit einem Faktor über 1,0 wird in die Ansicht hineingezoomt und mit einem Faktor zwischen 0,0 und 1,0 aus ihr herausgezoomt.

void QChart::zoomIn()

Vergrößert die Ansicht um den Faktor zwei.

void QChart::zoomIn(const QRectF &rect)

Zoomt in die Ansicht bis zu einer maximalen Ebene, bei der das Rechteck rect noch vollständig sichtbar ist.

Hinweis: Das Anwenden eines Zooms kann die Eigenschaften von angehängten Achsen verändern, zum Beispiel QAbstractAxis::min und QAbstractAxis::max.

Hinweis: Dies wird für Polardiagramme nicht unterstützt.

void QChart::zoomOut()

Verkleinert die Ansicht um den Faktor zwei.

Hinweis: Diese Funktion ist wirkungslos, wenn das Ergebnis einen ungültigen logarithmischen Achsenbereich enthalten würde.

void QChart::zoomReset()

Setzt die Bereiche der Reihe auf den Stand vor dem Aufruf einer Zoom-Methode zurück.

Hinweis: Dadurch werden auch die Einstellungen für den Bildlauf und den expliziten Achsenbereich zurückgesetzt, die zwischen dem ersten Zoomvorgang und dem Aufruf dieser Methode festgelegt wurden. Wenn keine Zoom-Operation durchgeführt wurde, bewirkt diese Methode nichts.

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