diff options
Diffstat (limited to 'examples/stackedbarchartdrilldown/main.cpp')
-rw-r--r-- | examples/stackedbarchartdrilldown/main.cpp | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/examples/stackedbarchartdrilldown/main.cpp b/examples/stackedbarchartdrilldown/main.cpp deleted file mode 100644 index 2673ab32..00000000 --- a/examples/stackedbarchartdrilldown/main.cpp +++ /dev/null @@ -1,113 +0,0 @@ -/**************************************************************************** -** -** 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 <QBarSet> -#include <QLegend> -#include "drilldownseries.h" -#include "drilldownchart.h" - -QTCOMMERCIALCHART_USE_NAMESPACE - -int main(int argc, char *argv[]) -{ - QApplication a(argc, argv); - QMainWindow window; - -//! [1] - DrilldownChart *drilldownChart = new DrilldownChart(); - drilldownChart->setTheme(QChart::ChartThemeBlueIcy); - drilldownChart->setAnimationOptions(QChart::SeriesAnimations); -//! [1] - -//! [2] - // Define categories - QStringList months; - months << "May" << "Jun" << "Jul" << "Aug" << "Sep"; - QStringList weeks; - weeks << "week 1" << "week 2" << "week 3" << "week 4"; - QStringList plants; - plants << "Habanero" << "Lemon Drop" << "Starfish" << "Aji Amarillo"; -//! [2] - -//! [3] - // Create drilldown structure - DrilldownBarSeries *seasonSeries = new DrilldownBarSeries(months, drilldownChart); - seasonSeries->setName("Crop by month - Season"); - - // Each month in season series has drilldown series for weekly data - for (int month = 0; month < months.count(); month++) { - - // Create drilldown series for every week - DrilldownBarSeries *weeklySeries = new DrilldownBarSeries(weeks, drilldownChart); - seasonSeries->mapDrilldownSeries(month, weeklySeries); - - // Drilling down from weekly data brings us back to season data. - for (int week = 0; week < weeks.count(); week++) { - weeklySeries->mapDrilldownSeries(week, seasonSeries); - weeklySeries->setName(QString("Crop by week - " + months.at(month))); - } - - // Use clicked signal to implement drilldown - QObject::connect(weeklySeries, SIGNAL(clicked(int,QBarSet*)), drilldownChart, SLOT(handleClicked(int,QBarSet*))); - } - - // Enable drilldown from season series using clicked signal - QObject::connect(seasonSeries, SIGNAL(clicked(int,QBarSet*)), drilldownChart, SLOT(handleClicked(int,QBarSet*))); -//! [3] - -//! [4] - // Fill monthly and weekly series with data - foreach (QString plant, plants) { - QBarSet *monthlyCrop = new QBarSet(plant); - for (int month = 0; month < months.count(); month++) { - QBarSet *weeklyCrop = new QBarSet(plant); - for (int week = 0; week < weeks.count(); week++) - *weeklyCrop << (qrand() % 20); - // Get the drilldown series from season series and add crop to it. - seasonSeries->drilldownSeries(month)->append(weeklyCrop); - *monthlyCrop << weeklyCrop->sum(); - } - seasonSeries->append(monthlyCrop); - } -//! [4] - -//! [5] - // Show season series in initial view - drilldownChart->changeSeries(seasonSeries); - drilldownChart->setTitle(seasonSeries->name()); -//! [5] - -//! [6] - drilldownChart->axisX()->setGridLineVisible(false); - drilldownChart->legend()->setVisible(true); - drilldownChart->legend()->setAlignment(Qt::AlignBottom); -//! [6] - - QChartView *chartView = new QChartView(drilldownChart); - window.setCentralWidget(chartView); - window.resize(480, 300); - window.show(); - - return a.exec(); -} - |