diff options
Diffstat (limited to 'examples/charts/areachart')
-rw-r--r-- | examples/charts/areachart/areachart.py | 67 | ||||
-rw-r--r-- | examples/charts/areachart/areachart.pyproject | 3 | ||||
-rw-r--r-- | examples/charts/areachart/doc/areachart.png | bin | 0 -> 15491 bytes | |||
-rw-r--r-- | examples/charts/areachart/doc/areachart.rst | 8 |
4 files changed, 78 insertions, 0 deletions
diff --git a/examples/charts/areachart/areachart.py b/examples/charts/areachart/areachart.py new file mode 100644 index 000000000..164264ff7 --- /dev/null +++ b/examples/charts/areachart/areachart.py @@ -0,0 +1,67 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + +"""PySide6 port of the areachart example from Qt v6.x""" + +import sys +from PySide6.QtCore import QPointF, Qt +from PySide6.QtWidgets import QMainWindow, QApplication +from PySide6.QtCharts import QChart, QChartView, QLineSeries, QAreaSeries +from PySide6.QtGui import QGradient, QPen, QLinearGradient, QPainter + + +class TestChart(QMainWindow): + def __init__(self): + super().__init__() + + self.series_0 = QLineSeries() + self.series_1 = QLineSeries() + + self.series_0.append(QPointF(1, 5)) + self.series_0.append(QPointF(3, 7)) + self.series_0.append(QPointF(7, 6)) + self.series_0.append(QPointF(9, 7)) + self.series_0.append(QPointF(12, 6)) + self.series_0.append(QPointF(16, 7)) + self.series_0.append(QPointF(18, 5)) + + self.series_1.append(QPointF(1, 3)) + self.series_1.append(QPointF(3, 4)) + self.series_1.append(QPointF(7, 3)) + self.series_1.append(QPointF(8, 2)) + self.series_1.append(QPointF(12, 3)) + self.series_1.append(QPointF(16, 4)) + self.series_1.append(QPointF(18, 3)) + + self.series = QAreaSeries(self.series_0, self.series_1) + self.series.setName("Batman") + self.pen = QPen(0x059605) + self.pen.setWidth(3) + self.series.setPen(self.pen) + + self.gradient = QLinearGradient(QPointF(0, 0), QPointF(0, 1)) + self.gradient.setColorAt(0.0, 0x3cc63c) + self.gradient.setColorAt(1.0, 0x26f626) + self.gradient.setCoordinateMode(QGradient.ObjectBoundingMode) + self.series.setBrush(self.gradient) + + self.chart = QChart() + self.chart.addSeries(self.series) + self.chart.setTitle("Simple areachart example") + self.chart.createDefaultAxes() + self.chart.axes(Qt.Horizontal)[0].setRange(0, 20) + self.chart.axes(Qt.Vertical)[0].setRange(0, 10) + + self._chart_view = QChartView(self.chart) + self._chart_view.setRenderHint(QPainter.Antialiasing) + + self.setCentralWidget(self._chart_view) + + +if __name__ == "__main__": + app = QApplication(sys.argv) + + window = TestChart() + window.show() + window.resize(400, 300) + sys.exit(app.exec()) diff --git a/examples/charts/areachart/areachart.pyproject b/examples/charts/areachart/areachart.pyproject new file mode 100644 index 000000000..b4a6f9d65 --- /dev/null +++ b/examples/charts/areachart/areachart.pyproject @@ -0,0 +1,3 @@ +{ + "files": ["areachart.py"] +} diff --git a/examples/charts/areachart/doc/areachart.png b/examples/charts/areachart/doc/areachart.png Binary files differnew file mode 100644 index 000000000..d03838443 --- /dev/null +++ b/examples/charts/areachart/doc/areachart.png diff --git a/examples/charts/areachart/doc/areachart.rst b/examples/charts/areachart/doc/areachart.rst new file mode 100644 index 000000000..c6cd718d7 --- /dev/null +++ b/examples/charts/areachart/doc/areachart.rst @@ -0,0 +1,8 @@ +Area Chart Example +================== + +The example shows how to create an area Chart + +.. image:: areachart.png + :width: 400 + :alt: Area Chart Screenshot |