summaryrefslogtreecommitdiffstats
path: root/examples/charts/customchart/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/charts/customchart/main.cpp')
-rw-r--r--examples/charts/customchart/main.cpp131
1 files changed, 131 insertions, 0 deletions
diff --git a/examples/charts/customchart/main.cpp b/examples/charts/customchart/main.cpp
new file mode 100644
index 00000000..8a35dfb1
--- /dev/null
+++ b/examples/charts/customchart/main.cpp
@@ -0,0 +1,131 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Digia Plc
+** All rights reserved.
+** For any questions to Digia, please use contact form at http://qt.digia.com
+**
+** This file is part of the Qt Enterprise Charts Add-on.
+**
+** $QT_BEGIN_LICENSE$
+** Licensees holding valid Qt Enterprise licenses may use this file in
+** accordance with the Qt Enterprise License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia.
+**
+** If you have questions regarding the use of this file, please use
+** contact form at http://qt.digia.com
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <QApplication>
+#include <QMainWindow>
+#include <QChartView>
+#include <QLineSeries>
+#include <QCategoryAxis>
+
+QT_CHARTS_USE_NAMESPACE
+
+int main(int argc, char *argv[])
+{
+ QApplication a(argc, argv);
+
+//![1]
+ QLineSeries *series = new QLineSeries();
+ *series << QPointF(0, 6) << QPointF(9, 4) << QPointF(15, 20) << QPointF(25, 12) << QPointF(29, 26);
+ QChart *chart = new QChart();
+ chart->legend()->hide();
+ chart->addSeries(series);
+//![1]
+
+//![2]
+ // Customize series
+ QPen pen(QRgb(0xfdb157));
+ pen.setWidth(5);
+ series->setPen(pen);
+
+ // Customize chart title
+ QFont font;
+ font.setPixelSize(18);
+ chart->setTitleFont(font);
+ chart->setTitleBrush(QBrush(Qt::white));
+ chart->setTitle("Customchart example");
+
+ // Customize chart background
+ QLinearGradient backgroundGradient;
+ backgroundGradient.setStart(QPointF(0, 0));
+ backgroundGradient.setFinalStop(QPointF(0, 1));
+ backgroundGradient.setColorAt(0.0, QRgb(0xd2d0d1));
+ backgroundGradient.setColorAt(1.0, QRgb(0x4c4547));
+ backgroundGradient.setCoordinateMode(QGradient::ObjectBoundingMode);
+ chart->setBackgroundBrush(backgroundGradient);
+
+ // Customize plot area background
+ QLinearGradient plotAreaGradient;
+ plotAreaGradient.setStart(QPointF(0, 1));
+ plotAreaGradient.setFinalStop(QPointF(1, 0));
+ plotAreaGradient.setColorAt(0.0, QRgb(0x555555));
+ plotAreaGradient.setColorAt(1.0, QRgb(0x55aa55));
+ plotAreaGradient.setCoordinateMode(QGradient::ObjectBoundingMode);
+ chart->setPlotAreaBackgroundBrush(plotAreaGradient);
+ chart->setPlotAreaBackgroundVisible(true);
+//![2]
+
+//![3]
+ QCategoryAxis *axisX = new QCategoryAxis();
+ QCategoryAxis *axisY = new QCategoryAxis();
+
+ // Customize axis label font
+ QFont labelsFont;
+ labelsFont.setPixelSize(12);
+ axisX->setLabelsFont(labelsFont);
+ axisY->setLabelsFont(labelsFont);
+
+ // Customize axis colors
+ QPen axisPen(QRgb(0xd18952));
+ axisPen.setWidth(2);
+ axisX->setLinePen(axisPen);
+ axisY->setLinePen(axisPen);
+
+ // Customize axis label colors
+ QBrush axisBrush(Qt::white);
+ axisX->setLabelsBrush(axisBrush);
+ axisY->setLabelsBrush(axisBrush);
+
+ // Customize grid lines and shades
+ axisX->setGridLineVisible(false);
+ axisY->setGridLineVisible(false);
+ axisY->setShadesPen(Qt::NoPen);
+ axisY->setShadesBrush(QBrush(QColor(0x99, 0xcc, 0xcc, 0x55)));
+ axisY->setShadesVisible(true);
+//![3]
+
+//![4]
+ axisX->append("low", 10);
+ axisX->append("optimal", 20);
+ axisX->append("high", 30);
+ axisX->setRange(0, 30);
+
+ axisY->append("slow", 10);
+ axisY->append("med", 20);
+ axisY->append("fast", 30);
+ axisY->setRange(0, 30);
+
+ chart->setAxisX(axisX, series);
+ chart->setAxisY(axisY, series);
+//![4]
+
+//![5]
+ QChartView *chartView = new QChartView(chart);
+ chartView->setRenderHint(QPainter::Antialiasing);
+//![5]
+
+//![6]
+ QMainWindow window;
+ window.setCentralWidget(chartView);
+ window.resize(400, 300);
+ window.show();
+//![6]
+
+ return a.exec();
+}