QPolarChart Class

Polar chart API for Qt Charts. More...

Header: #include <QPolarChart>
Inherits: QChart

Public Types

enum PolarOrientation { PolarOrientationRadial, PolarOrientationAngular }
flags PolarOrientations

Public Functions

QPolarChart(QGraphicsItem *parent = Q_NULLPTR, Qt::WindowFlags wFlags = Qt::WindowFlags())
void addAxis(QAbstractAxis *axis, PolarOrientation polarOrientation)
QList<QAbstractAxis *> axes(PolarOrientations polarOrientation = PolarOrientations( PolarOrientationRadial | PolarOrientationAngular ), QAbstractSeries *series = Q_NULLPTR) const

Static Public Members

PolarOrientation axisPolarOrientation(QAbstractAxis *axis)

Additional Inherited Members

Detailed Description

Polar chart API for Qt Charts.

QPolarChart is a specialization of QChart to show a polar chart.

Polar charts support line, spline, area, and scatter series, and all axis types supported by those series.

Note: When setting ticks to an angular QValueAxis, keep in mind that the first and last tick are co-located at 0/360 degree angle.

Note: If the angular distance between two consecutive points in a series is more than 180 degrees, any line connecting the two points becomes meaningless, so choose the axis ranges accordingly when displaying line, spline, or area series. In such case series don't draw a direct line between the two points, but instead draw a line to and from the center of the chart.

Note: Polar charts draw all axes of same orientation in the same position, so using multiple axes of same orientation can be confusing, unless the extra axes are only used to customize the grid (e.g. you can display a highlighted range with a secondary shaded QCategoryAxis or provide unlabeled subticks with a secondary QValueAxis that has its labels hidden).

See also QChart.

Member Type Documentation

enum QPolarChart::PolarOrientation
flags QPolarChart::PolarOrientations

This type is used to specify the polar orientation of an axis.


The PolarOrientations type is a typedef for QFlags<PolarOrientation>. It stores an OR combination of PolarOrientation values.

Member Function Documentation

QPolarChart::QPolarChart(QGraphicsItem *parent = Q_NULLPTR, Qt::WindowFlags wFlags = Qt::WindowFlags())

Constructs a polar chart as a child of the parent. Parameter wFlags is passed to the QChart constructor.


Destroys the polar chart object and its children, like series and axis objects added to it.

void QPolarChart::addAxis(QAbstractAxis *axis, PolarOrientation polarOrientation)

This convenience method adds axis to the polar chart with polarOrientation. The chart takes the ownership of the axis.

Note: Axes can be added to a polar chart also with QChart::addAxis() instead of this method. The specified alignment determines the polar orientation: horizontal alignments indicate angular axis and vertical alignments indicate radial axis.

See also QChart::removeAxis(), QChart::createDefaultAxes(), QAbstractSeries::attachAxis(), and QChart::addAxis().

QList<QAbstractAxis *> QPolarChart::axes(PolarOrientations polarOrientation = PolarOrientations( PolarOrientationRadial | PolarOrientationAngular ), QAbstractSeries *series = Q_NULLPTR) const

Returns the axes added for the series with polarOrientation. If no series is provided, then any axis with the specified polar orientation is returned.

See also addAxis().

[static] PolarOrientation QPolarChart::axisPolarOrientation(QAbstractAxis *axis)

Angular axes of a polar chart report horizontal orientation and radial axes report vertical orientation. This function is a convenience function for converting the orientation of an axis to corresponding polar orientation. If the axis is NULL or not added to a polar chart, the return value is meaningless.

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