QAbstractSeries Class
Die Klasse QAbstractSeries ist eine Basisklasse für alle Qt Charts Serien. Mehr...
Header: | #include <QAbstractSeries> |
In QML: | AbstractSeries |
Inherits: | QObject |
Inherited By: | QAbstractBarSeries, QAreaSeries, QBoxPlotSeries, QCandlestickSeries, QPieSeries, and QXYSeries |
Öffentliche Typen
enum | SeriesType { SeriesTypeLine, SeriesTypeArea, SeriesTypeBar, SeriesTypeStackedBar, SeriesTypePercentBar, …, SeriesTypeCandlestick } |
Eigenschaften
Öffentliche Funktionen
virtual | ~QAbstractSeries() |
bool | attachAxis(QAbstractAxis *axis) |
QList<QAbstractAxis *> | attachedAxes() |
QChart * | chart() const |
bool | detachAxis(QAbstractAxis *axis) |
void | hide() |
bool | isVisible() const |
QString | name() const |
qreal | opacity() const |
void | setName(const QString &name) |
void | setOpacity(qreal opacity) |
void | setUseOpenGL(bool enable = true) |
void | setVisible(bool visible = true) |
void | show() |
virtual QAbstractSeries::SeriesType | type() const = 0 |
bool | useOpenGL() const |
Signale
void | nameChanged() |
void | opacityChanged() |
void | useOpenGLChanged() |
void | visibleChanged() |
Detaillierte Beschreibung
Normalerweise werden die serientypspezifischen geerbten Klassen anstelle der Basisklasse verwendet.
Siehe auch QXYSeries, QLineSeries, QSplineSeries, QScatterSeries, QAreaSeries, QAbstractBarSeries, QBarSeries, QStackedBarSeries, QPercentBarSeries, QHorizontalBarSeries, QHorizontalStackedBarSeries, QHorizontalPercentBarSeries, und QPieSeries.
Dokumentation der Mitgliedstypen
enum QAbstractSeries::SeriesType
Diese Aufzählung beschreibt den Typ der Reihe.
Konstante | Wert | Beschreibung |
---|---|---|
QAbstractSeries::SeriesTypeLine | 0 | Ein Liniendiagramm. |
QAbstractSeries::SeriesTypeArea | 1 | Ein Flächendiagramm. |
QAbstractSeries::SeriesTypeBar | 2 | Ein vertikales Balkendiagramm. |
QAbstractSeries::SeriesTypeStackedBar | 3 | Ein vertikales gestapeltes Balkendiagramm. |
QAbstractSeries::SeriesTypePercentBar | 4 | Ein vertikales Prozent-Balkendiagramm. |
QAbstractSeries::SeriesTypePie | 5 | Ein Kreisdiagramm. |
QAbstractSeries::SeriesTypeScatter | 6 | Ein Punktediagramm. |
QAbstractSeries::SeriesTypeSpline | 7 | Ein Spline-Diagramm. |
QAbstractSeries::SeriesTypeHorizontalBar | 8 | Ein horizontales Balkendiagramm. |
QAbstractSeries::SeriesTypeHorizontalStackedBar | 9 | Ein horizontales gestapeltes Balkendiagramm. |
QAbstractSeries::SeriesTypeHorizontalPercentBar | 10 | Ein horizontales Prozent-Balkendiagramm. |
QAbstractSeries::SeriesTypeBoxPlot | 11 | Ein Boxplot-Diagramm. |
QAbstractSeries::SeriesTypeCandlestick | 12 | Ein Candlestick-Diagramm. |
Dokumentation der Eigenschaften
name : QString
Diese Eigenschaft enthält den Namen der Serie.
Der Name wird in der Legende für die Serie angezeigt und unterstützt HTML-Formatierung.
Zugriffsfunktionen:
QString | name() const |
void | setName(const QString &name) |
Benachrichtigungssignal:
void | nameChanged() |
opacity : qreal
Diese Eigenschaft enthält die Deckkraft der Serie.
Standardmäßig ist die Deckkraft 1,0. Die gültigen Werte reichen von 0,0 (transparent) bis 1,0 (undurchsichtig).
Zugriffsfunktionen:
qreal | opacity() const |
void | setOpacity(qreal opacity) |
Melder-Signal:
void | opacityChanged() |
[read-only]
type : const SeriesType
Diese Eigenschaft enthält den Typ der Reihe.
Zugriffsfunktionen:
virtual QAbstractSeries::SeriesType | type() const = 0 |
useOpenGL : bool
Gibt an, ob das Zeichnen der Serie durch die Verwendung von OpenGL beschleunigt wird oder nicht.
Die Beschleunigung mit OpenGL wird nur für QLineSeries und QScatterSeries unterstützt. Eine Linienreihe, die als Randreihe für QAreaSeries verwendet wird, kann die OpenGL-Beschleunigung nicht nutzen. Wenn ein Diagramm Serien enthält, die mit OpenGL gezeichnet werden, wird ein transparentes QOpenGLWidget über dem Diagrammbereich erstellt. Die beschleunigten Serien werden nicht auf der zugrunde liegenden QGraphicsView gezeichnet, sondern auf dem erstellten QOpenGLWidget.
Der Leistungsgewinn durch die Verwendung von OpenGL zur Beschleunigung des Zeichnens von Reihen hängt von der zugrunde liegenden Hardware ab, ist aber in den meisten Fällen beträchtlich. Auf einem Standard-Desktop-Computer beispielsweise ermöglicht die Aktivierung der OpenGL-Beschleunigung für eine Serie normalerweise das Rendern von mindestens hundertmal mehr Punkten, ohne dass die Bildwiederholrate sinkt. Auch die Größe des Diagramms hat weniger Einfluss auf die Bildrate.
Die OpenGL-Beschleunigung des Zeichnens von Serien ist für Anwendungsfälle gedacht, die ein schnelles Zeichnen einer großen Anzahl von Punkten erfordern. Sie ist auf Effizienz optimiert, und daher fehlt den Serien, die sie verwenden, die Unterstützung für viele Funktionen, die für nicht beschleunigte Serien verfügbar sind:
- Serienanimationen werden für beschleunigte Serien nicht unterstützt.
- Punktbeschriftungen werden für beschleunigte Reihen nicht unterstützt.
- Stiftstile, Markierungsformen und Leuchtmarkierungen werden für beschleunigte Reihen ignoriert. Es werden nur durchgezogene Linien und einfache Streupunkte unterstützt. Die Streupunkte können kreisförmig oder rechteckig sein, abhängig von der zugrunde liegenden Grafikhardware und den Treibern.
- Polardiagramme unterstützen keine beschleunigten Reihen.
- Die Aktivierung von Schlagschatten oder die Verwendung einer transparenten Diagrammhintergrundfarbe wird bei der Verwendung von beschleunigten Reihen nicht empfohlen, da dies die Bildrate erheblich verlangsamen kann.
Diese zusätzlichen Einschränkungen ergeben sich aus der Tatsache, dass die beschleunigte Reihe in einem separaten Widget über dem Diagramm gezeichnet wird:
- Wenn Sie irgendwelche Grafikelemente über einem Diagramm zeichnen, das eine beschleunigte Serie enthält, wird die beschleunigte Serie über diesen Elementen gezeichnet.
- Damit QOpenGLWidget teilweise transparent sein kann, muss es über alle anderen Widgets gestapelt werden. Das bedeutet, dass Sie keine anderen Widgets haben können, die das Diagramm teilweise verdecken, wenn Sie beschleunigte Serien verwenden.
- Beschleunigte Reihen werden nicht für Anwendungsfälle unterstützt, in denen die Grafikszene mehr als eine zugeordnete Grafikansicht hat.
- Beschleunigte Serien werden nicht für Anwendungsfälle unterstützt, bei denen das Diagramm eine andere als die Standardgeometrie aufweist. Das Hinzufügen von Transformationen zur Grafikansicht führt beispielsweise dazu, dass die beschleunigte Reihe an einer falschen Position in Bezug auf das Diagramm gezeichnet wird.
Der Standardwert ist false
.
Zugriffsfunktionen:
bool | useOpenGL() const |
void | setUseOpenGL(bool enable = true) |
Benachrichtigungssignal:
void | useOpenGLChanged() |
visible : bool
Diese Eigenschaft gibt an, ob die Serie sichtbar ist oder nicht.
Standardmäßig ist true
.
Zugriffsfunktionen:
bool | isVisible() const |
void | setVisible(bool visible = true) |
Benachrichtigungssignal:
void | visibleChanged() |
Dokumentation der Mitgliedsfunktionen
[virtual noexcept]
QAbstractSeries::~QAbstractSeries()
Virtueller Destruktor für die Diagrammserie.
bool QAbstractSeries::attachAxis(QAbstractAxis *axis)
Hängt die durch axis angegebene Achse an die Serie an.
Gibt true
zurück, wenn die Achse erfolgreich angefügt wurde, andernfalls false
.
Hinweis: Wenn mehrere Achsen mit derselben Ausrichtung an dieselbe Reihe angehängt werden, haben sie dieselben Mindest- und Höchstwerte.
Siehe auch QChart::addAxis() und QChart::createDefaultAxes().
QList<QAbstractAxis *> QAbstractSeries::attachedAxes()
Gibt die Liste der Achsen zurück, die der Reihe zugeordnet sind. Normalerweise sind einer Reihe eine x-Achse und eine y-Achse zugeordnet, mit Ausnahme von QPieSeries, das keine Achsen zugeordnet hat.
Siehe auch attachAxis() und detachAxis().
QChart *QAbstractSeries::chart() const
Gibt das Diagramm zurück, zu dem die Serie gehört.
Wird automatisch gesetzt, wenn die Serie dem Diagramm hinzugefügt wird, und deaktiviert, wenn die Serie aus dem Diagramm entfernt wird.
bool QAbstractSeries::detachAxis(QAbstractAxis *axis)
Trennt die durch axis angegebene Achse von der Reihe.
Gibt true
zurück, wenn die Achse erfolgreich abgetrennt wurde, andernfalls false
.
Siehe auch QChart::removeAxis().
void QAbstractSeries::hide()
Setzt die Sichtbarkeit der Serie auf false
.
Siehe auch setVisible() und isVisible().
[signal]
void QAbstractSeries::nameChanged()
Dieses Signal wird ausgegeben, wenn sich der Serienname ändert.
Hinweis: Benachrichtigungssignal für die Eigenschaft name.
[signal]
void QAbstractSeries::opacityChanged()
Dieses Signal wird ausgegeben, wenn sich die Deckkraft der Reihe ändert.
Hinweis: Benachrichtigungssignal für die Eigenschaft opacity.
void QAbstractSeries::show()
Setzt die Sichtbarkeit der Serie auf true
.
Siehe auch setVisible() und isVisible().
[signal]
void QAbstractSeries::useOpenGLChanged()
Dieses Signal wird ausgegeben, wenn die Beschleunigung des Zeichnens der Serie durch die Verwendung von OpenGL aktiviert oder deaktiviert ist.
Hinweis: Benachrichtigungssignal für die Eigenschaft useOpenGL.
[signal]
void QAbstractSeries::visibleChanged()
Dieses Signal wird ausgesendet, wenn sich die Sichtbarkeit der Serie ändert.
Hinweis: Benachrichtigungssignal für die Eigenschaft visible.
© 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.