Класс QChart
Класс QChart управляет графическим представлением рядов, легенд и осей графика. Подробнее...
| Заголовок: | #include <QChart> |
| Наследует: | QGraphicsWidget |
| Наследуется от: |
Публичные типы
| перечисление | AnimationOption { НетАнимации, АнимацииОсейСетка, АнимацииРядов, ВсеАнимации } |
| флаги | AnimationOptions |
| перечисление | ChartTheme { СветлаяТема, ТемаСинийКелеван, ТёмнаяТема, ТемаКоричневыйПесок, ТемаСинийNCS, …, ТемаQt } |
| перечисление | ChartType { ТипГрафикаНеОпределён, ТипГрафикаДекартов, ТипГрафикаПолярный } |
Свойства
|
|
Открытые функции
| 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() |
Сигналы
| void | plotAreaChanged(const QRectF &plotArea) |
Подробное описание
QChart — это QGraphicsWidget, который можно отобразить в QGraphicsScene. Он управляет графическим представлением различных типов рядов и других связанных с диаграммой объектов, таких как легенда и оси. Для простого отображения диаграммы в макете можно использовать удобный класс QChartView вместо QChart. Кроме того, ряды линий, сплайнов, областей и точек могут быть представлены в виде полярных диаграмм с помощью класса QPolarChart.
См. также QChartView и QPolarChart.
Документация типов членов
перечисление QChart::AnimationOptionфлаги QChart::AnimationOptions
Это перечисление описывает анимации, включенные в диаграмме.
| Постоянная | Значение | Описание |
|---|---|---|
QChart::NoAnimation |
0x0 |
Анимация отключена в диаграмме. Это значение по умолчанию. |
QChart::GridAxisAnimations |
0x1 |
Анимация оси сетки включена в диаграмме. |
QChart::SeriesAnimations |
0x2 |
Анимация рядов включена в диаграмме. |
QChart::AllAnimations |
0x3 |
Все типы анимации включены в диаграмме. |
Тип AnimationOptions — это псевдоним для QFlags<AnimationOption>. Он хранит логическое ИЛИ сочетание значений AnimationOption.
перечисление QChart::ChartTheme
Это перечисление описывает тему, используемую диаграммой.
Тема — это встроенный набор настроек стиля пользовательского интерфейса, применяемых ко всем визуальным элементам диаграммы, таким как цвета, линии, кисти и шрифты рядов, а также осей, заголовков и легенды. Пример использования тем показан в примере тем диаграмм.
Примечание: Изменение темы перезапишет все ранее применённые настройки для рядов.
| Постоянная | Значение | Описание |
|---|---|---|
QChart::ChartThemeLight |
0 |
Светлая тема, которая является темой по умолчанию. |
QChart::ChartThemeBlueCerulean |
1 |
Тема цвета церулеан. |
QChart::ChartThemeDark |
2 |
Темная тема. |
QChart::ChartThemeBrownSand |
3 |
Песчано-коричневая тема. |
QChart::ChartThemeBlueNcs |
4 |
Голубая тема системы естественных цветов (NCS). |
QChart::ChartThemeHighContrast |
5 |
Тема высокой контрастности. |
QChart::ChartThemeBlueIcy |
6 |
Ледяно-голубая тема. |
QChart::ChartThemeQt |
7 |
Тема Qt. |
перечисление QChart::ChartType
Это перечисление описывает тип диаграммы.
| Постоянная | Значение | Описание |
|---|---|---|
QChart::ChartTypeUndefined |
0 |
Тип диаграммы не определён. |
QChart::ChartTypeCartesian |
1 |
Декартова диаграмма. |
QChart::ChartTypePolar |
2 |
Полярная диаграмма. |
Документация свойств
animationDuration : int
Это свойство содержит длительность анимации для диаграммы.
Функции доступа:
| int | animationDuration() const |
| void | setAnimationDuration(int msecs) |
animationEasingCurve : QEasingCurve
Это свойство содержит кривую ускорения анимации для диаграммы.
Функции доступа:
| QEasingCurve | animationEasingCurve() const |
| void | setAnimationEasingCurve(const QEasingCurve &curve) |
animationOptions : QChart::AnimationOptions
Это свойство содержит параметры анимации для диаграммы.
Анимация включена или выключена на основе этого параметра.
Функции доступа:
| QChart::AnimationOptions | animationOptions() const |
| void | setAnimationOptions(QChart::AnimationOptions options) |
backgroundRoundness : qreal
Это свойство содержит диаметр окружности скругления углов фона диаграммы.
Функции доступа:
| qreal | backgroundRoundness() const |
| void | setBackgroundRoundness(qreal diameter) |
backgroundVisible : bool
Это свойство определяет, виден ли фон диаграммы.
Функции доступа:
| bool | isBackgroundVisible() const |
| void | setBackgroundVisible(bool visible = true) |
См. также setBackgroundBrush(), setBackgroundPen() и plotAreaBackgroundVisible.
[read-only] chartType : const QChart::ChartType
Это свойство определяет, является ли диаграмма декартовой или полярной.
Это свойство устанавливается внутри и оно является только для чтения.
Функции доступа:
| QChart::ChartType | chartType() const |
См. также QPolarChart.
dropShadowEnabled : bool
Это свойство определяет, включен ли эффект тени фона.
Если установлено true, эффект тени фона включён. Если установлено false, он выключен.
Примечание: Эффект тени зависит от темы и, следовательно, может измениться при смене темы.
Функции доступа:
| bool | isDropShadowEnabled() const |
| void | setDropShadowEnabled(bool enabled = true) |
locale : QLocale
Это свойство содержит локаль, используемую для форматирования различных меток диаграммы.
Метки локализуются только когда localizeNumbers равно true, за исключением меток QDateTimeAxis, которые всегда используют QLocale, установленную с этим свойством.
По умолчанию используется локаль по умолчанию приложения во время создания диаграммы.
Функции доступа:
| QLocale | locale() const |
| void | setLocale(const QLocale &locale) |
См. также localizeNumbers.
localizeNumbers : bool
Это свойство определяет, локализуются ли числа.
Когда true, все сгенерированные числа, отображаемые в различных рядах и метках осей, будут локализованы с помощью QLocale, установленной с помощью свойства locale. Когда false, всегда используется локаль C. По умолчанию false.
Примечание: Это свойство не влияет на метки QDateTimeAxis, которые всегда используют QLocale, установленную с помощью свойства locale.
Функции доступа:
| bool | localizeNumbers() const |
| void | setLocalizeNumbers(bool localize) |
См. также locale.
margins : QMargins
Это свойство содержит минимальные отступы, разрешенные между краем прямоугольника диаграммы и областью графика.
Отступы используются для рисования заголовка, осей и легенды.
Функции доступа:
| QMargins | margins() const |
| void | setMargins(const QMargins &margins) |
plotArea : QRectF
Это свойство содержит прямоугольник, в пределах которого отрисовывается диаграмма.
Площадь графика не включает область, определённую отступами. По умолчанию она будет изменять размер, если находится внутри QChartView. Если для области графика установлены явные размеры, то она их будет соблюдать. Чтобы вернуться к поведению по умолчанию, вызовите setPlotArea(QRectF());.
Функции доступа:
| QRectF | plotArea() const |
| void | setPlotArea(const QRectF &rect) |
Сигнал уведомления:
| void | plotAreaChanged(const QRectF &plotArea) |
plotAreaBackgroundVisible : bool
Это свойство определяет, виден ли фон области графика диаграммы.
Примечание: По умолчанию фон области графика невидим, и область графика использует общий фон диаграммы.
Функции доступа:
| bool | isPlotAreaBackgroundVisible() const |
| void | setPlotAreaBackgroundVisible(bool visible = true) |
См. также setPlotAreaBackgroundBrush(), setPlotAreaBackgroundPen() и backgroundVisible.
theme : QChart::ChartTheme
Это свойство содержит тему, используемую для диаграммы.
Функции доступа:
| QChart::ChartTheme | theme() const |
| void | setTheme(QChart::ChartTheme theme) |
title : QString
Это свойство содержит заголовок диаграммы.
Заголовок отображается в виде заголовка над диаграммой. Заголовки диаграмм поддерживают форматирование HTML.
Функции доступа:
| QString | title() const |
| void | setTitle(const QString &title) |
Документация функций-членов
QChart::QChart(QGraphicsItem *parent = nullptr, Qt::WindowFlags wFlags = Qt::WindowFlags())
Создаёт объект графика, являющийся дочерним элементом parent. Свойства, заданные в wFlags, передаются конструктору QGraphicsWidget.
[virtual] QChart::~QChart()
Удаляет объект графика и его дочерние элементы, такие как добавленные ряды и оси.
void QChart::addAxis(QAbstractAxis *axis, Qt::Alignment alignment)
Добавляет ось axis на график, выравнивая её в соответствии со значением alignment. График принимает владение осью.
См. также removeAxis(), createDefaultAxes() и QAbstractSeries::attachAxis().
void QChart::addSeries(QAbstractSeries *series)
Добавляет ряд series на график и принимает владение им.
Примечание: Новые добавленные ряды по умолчанию не прикреплены к осям, даже к тем, которые могли быть созданы для графика с помощью createDefaultAxes() до добавления ряда на график. Если к новому ряду не прикреплены оси до отображения графика, ряд будет нарисован так, как будто у него есть оси с диапазонами, которые точно соответствуют ряду в области графика. Это может быть запутанно, если на этом же графике отображаются и другие ряды с должным образом прикреплёнными осями, поэтому всегда убедитесь, что вы либо вызываете createDefaultAxes() после добавления ряда, либо явно прикрепляете оси к ряду.
См. также removeSeries(), removeAllSeries(), createDefaultAxes() и QAbstractSeries::attachAxis().
QList<QAbstractAxis *> QChart::axes(Qt::Orientations orientation = Qt::Horizontal|Qt::Vertical, QAbstractSeries *series = nullptr) const
Возвращает оси, прикреплённые к ряду series с ориентацией, заданной orientation. Если ряд не указан, возвращаются все оси, добавленные на график с указанной ориентацией.
См. также addAxis() и createDefaultAxes().
QBrush QChart::backgroundBrush() const
Возвращает кисть, используемую для рисования фона области графика.
См. также setBackgroundBrush().
QPen QChart::backgroundPen() const
Возвращает перо, используемое для рисования фона области графика.
См. также setBackgroundPen().
void QChart::createDefaultAxes()
Создаёт оси для графика на основе рядов, которые уже были добавлены на график. Любые ранее добавленные оси графика будут удалены.
Примечание: Эта функция должна быть вызвана после добавления всех рядов на график. Оси, созданные этой функцией, НЕ будут автоматически прикреплены к любым рядам, добавленным на график после вызова этой функции. Ряд без прикреплённых осей по умолчанию будет масштабироваться, чтобы использовать всю область графика, что может быть запутанным, если также присутствуют другие ряды с правильно прикреплёнными осями.
| Тип ряда | Горизонтальная ось (X) | Вертикальная ось (Y) |
|---|---|---|
| QXYSeries | QValueAxis | QValueAxis |
| QBarSeries | QBarCategoryAxis | QValueAxis |
| QPieSeries | Нет | Нет |
Если на график добавлено несколько рядов, производных от QXYSeries, и не добавлено рядов других типов, то создаётся только одна пара осей. Если на график добавлено несколько рядов разных типов, то каждому ряду создаётся своя пара осей.
Оси, специфичные для ряда, могут быть позже получены с помощью графика, передав ряд в качестве параметра для вызова функции axes(). QPieSeries не создаёт осей.
См. также axes() и QAbstractSeries::attachAxis().
bool QChart::isZoomed()
Возвращает true если у любого ряда есть увеличенный домен.
QLegend *QChart::legend() const
Возвращает объект легенды графика. Владение остаётся у графика.
QPointF QChart::mapToPosition(const QPointF &value, QAbstractSeries *series = nullptr)
Возвращает положение на графике, соответствующее значению value в ряду, заданном series.
QPointF QChart::mapToValue(const QPointF &position, QAbstractSeries *series = nullptr)
Возвращает значение в ряду, указанном series, в позиции, заданной position, на графике.
QBrush QChart::plotAreaBackgroundBrush() const
Возвращает кисть, используемую для заливки фона области графика.
См. также plotArea(), plotAreaBackgroundVisible, plotAreaBackgroundPen() и setPlotAreaBackgroundBrush().
QPen QChart::plotAreaBackgroundPen() const
Возвращает перо, используемое для рисования фона области графика.
См. также plotArea(), plotAreaBackgroundVisible, plotAreaBackgroundBrush() и setPlotAreaBackgroundPen().
void QChart::removeAllSeries()
Удаляет и уничтожает все объекты рядов, которые были добавлены на график.
См. также addSeries() и removeSeries().
void QChart::removeAxis(QAbstractAxis *axis)
Удаляет ось axis с графика. График освобождает владение указанным объектом оси axis.
См. также addAxis(), createDefaultAxes() и QAbstractSeries::detachAxis().
void QChart::removeSeries(QAbstractSeries *series)
Удаляет ряд series с графика. График освобождает владение указанным объектом ряда series.
См. также addSeries() и removeAllSeries().
void QChart::scroll(qreal dx, qreal dy)
Прокручивает видимую область графика на расстояние, заданное dx и dy.
Для полярных графиков dx указывает угол по угловой оси вместо расстояния.
QList<QAbstractSeries *> QChart::series() const
Возвращает все ряды, добавленные на график.
См. также addSeries(), removeSeries() и removeAllSeries().
void QChart::setBackgroundBrush(const QBrush &brush)
Устанавливает кисть, используемую для рисования фона области графика, на brush.
См. также backgroundBrush().
void QChart::setBackgroundPen(const QPen &pen)
Устанавливает перо, используемое для рисования фона области графика, на pen.
См. также backgroundPen().
void QChart::setPlotAreaBackgroundBrush(const QBrush &brush)
Устанавливает кисть, используемую для заливки фона области графика, на brush.
См. также plotArea(), plotAreaBackgroundVisible, setPlotAreaBackgroundPen() и plotAreaBackgroundBrush().
void QChart::setPlotAreaBackgroundPen(const QPen &pen)
Устанавливает pen в качестве пера для рисования фона области построения графика.
См. также plotArea(), plotAreaBackgroundVisible, setPlotAreaBackgroundBrush(), и plotAreaBackgroundPen().
void QChart::setTitleBrush(const QBrush &brush)
Устанавливает brush в качестве кисти для рисования текста заголовка.
См. также titleBrush().
void QChart::setTitleFont(const QFont &font)
Устанавливает font в качестве шрифта для рисования заголовка графика.
См. также titleFont().
QBrush QChart::titleBrush() const
Возвращает кисть, используемую для рисования текста заголовка.
См. также setTitleBrush().
QFont QChart::titleFont() const
Возвращает шрифт, используемый для рисования заголовка графика.
См. также setTitleFont().
void QChart::zoom(qreal factor)
Увеличивает масштаб представления на заданный множитель factor.
Множитель больше 1.0 увеличивает масштаб, множитель от 0.0 до 1.0 уменьшает масштаб.
void QChart::zoomIn()
Увеличивает масштаб представления в два раза.
void QChart::zoomIn(const QRectF &rect)
Увеличивает масштаб представления до максимального уровня, при котором прямоугольник rect по-прежнему полностью виден.
Примечание: Применяемое масштабирование может изменить свойства присоединённых осей, например QAbstractAxis::min и QAbstractAxis::max.
Примечание: Для полярных графиков эта функция не поддерживается.
void QChart::zoomOut()
Уменьшает масштаб представления в два раза.
Примечание: Функция ничего не делает, если результат приведёт к недопустимому диапазону логарифмической оси.
void QChart::zoomReset()
Сбрасывает области значений рядов до значений, которые были до вызова любого метода масштабирования.
Примечание: Это также сбросит прокрутку и явные настройки диапазона осей, заданные между первой операцией масштабирования и вызовом этого метода. Если операция масштабирования не была выполнена, этот метод ничего не делает.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qchart.html