/**************************************************************************** ** ** Copyright (C) 2013 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 "charts.h" #include "qchart.h" #include "qlineseries.h" #include "qvalueaxis.h" #include "qcategoryaxis.h" class MultiValueAxis: public Chart { public: QString name() { return "AxisSet 1"; } QString category() { return QObject::tr("MultiAxis"); } QString subCategory() { return "MultiValueAxis"; } QChart *createChart(const DataTable &table) { QChart *chart = new QChart(); QValueAxis *axisX; QValueAxis *axisY; chart->setTitle("MultiValueAxis1"); QString name("Series"); int nameIndex = 0; foreach (DataList list, table) { QLineSeries *series = new QLineSeries(chart); foreach (Data data, list) series->append(data.first); series->setName(name + QString::number(nameIndex)); chart->addSeries(series); axisX = new QValueAxis(); axisX->setLinePenColor(series->pen().color()); axisY = new QValueAxis(); axisY->setLinePenColor(series->pen().color()); chart->addAxis(axisX,nameIndex % 2?Qt::AlignTop:Qt::AlignBottom); chart->addAxis(axisY,nameIndex % 2?Qt::AlignRight:Qt::AlignLeft); series->attachAxis(axisX); series->attachAxis(axisY); nameIndex++; } return chart; } }; DECLARE_CHART(MultiValueAxis);