##// END OF EJS Templates
horizontal barchart frame
horizontal barchart frame

File last commit:

r1618:fab18ef35094
r1672:3408cb5163eb
Show More
qbarseries.cpp
118 lines | 3.4 KiB | text/x-c | CppLexer
sauimone
new series: groupedbarseries
r1167 /****************************************************************************
**
** Copyright (C) 2012 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 Commercial Charts Add-on.
**
** $QT_BEGIN_LICENSE$
** Licensees holding valid Qt Commercial licenses may use this file in
** accordance with the Qt Commercial 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$
**
****************************************************************************/
sauimone
GroupedBarSeries to BarSeries
r1594 #include "qbarseries.h"
#include "qbarseries_p.h"
sauimone
new series: groupedbarseries
r1167 #include "groupedbarchartitem_p.h"
#include "chartdataset_p.h"
#include "charttheme_p.h"
#include "chartanimator_p.h"
sauimone
added createAxis methods to private series
r1545 #include "qvaluesaxis.h"
sauimone
new series: groupedbarseries
r1167
QTCOMMERCIALCHART_BEGIN_NAMESPACE
/*!
sauimone
GroupedBarSeries to BarSeries
r1594 \class QBarSeries
\brief Series for creating bar chart
sauimone
new series: groupedbarseries
r1167 \mainclass
sauimone
GroupedBarSeries to BarSeries
r1594 QBarSeries represents a series of data shown as bars. The purpose of this class is to draw bars
as groups, where bars in same category are grouped next to each other. QBarSeries groups the data
sauimone
Fixed category handling of barcharts. Now the categories can be undefined. Updated documentation.
r1208 from sets to categories, which are defined by a QStringList.
sauimone
new series: groupedbarseries
r1167
sauimone
documentation update
r1618 See the \l {BarChart Example} {bar chart example} to learn how to create a grouped bar chart.
\image examples_barchart.png
sauimone
new series: groupedbarseries
r1167
sauimone
renamed barseries files to abstractbarseries
r1586 \sa QBarSet, QPercentBarSeries, QAbstractBarSeries, QStackedBarSeries
sauimone
new series: groupedbarseries
r1167 */
Tero Ahola
Documenting QML bar series API
r1489 /*!
sauimone
GroupedBarSeries to BarSeries
r1594 \qmlclass BarSeries QBarSeries
sauimone
changed barseries to abstractbarseries in documentation
r1590 \inherits AbstractBarSeries
Tero Ahola
Documenting QML bar series API
r1489
The following QML shows how to create a simple grouped bar chart:
sauimone
documentation update
r1618 \snippet ../demos/qmlchart/qml/qmlchart/View6.qml 1
Tero Ahola
Documenting QML bar series API
r1489 \beginfloatleft
sauimone
documentation update
r1618 \image demos_qmlchart6.png
Tero Ahola
Documenting QML bar series API
r1489 \endfloat
\clearfloat
*/
sauimone
new series: groupedbarseries
r1167
/*!
sauimone
GroupedBarSeries to BarSeries
r1594 Constructs empty QBarSeries.
QBarSeries is QObject which is a child of a \a parent.
sauimone
new series: groupedbarseries
r1167 */
sauimone
GroupedBarSeries to BarSeries
r1594 QBarSeries::QBarSeries(QObject *parent)
: QAbstractBarSeries(*new QBarSeriesPrivate(this), parent)
sauimone
new series: groupedbarseries
r1167 {
}
Jani Honkonen
Fix series type() docs
r1345 /*!
Returns QChartSeries::SeriesTypeGroupedBar.
*/
sauimone
GroupedBarSeries to BarSeries
r1594 QAbstractSeries::SeriesType QBarSeries::type() const
sauimone
new series: groupedbarseries
r1167 {
sauimone
GroupedBarSeries to BarSeries
r1594 return QAbstractSeries::SeriesTypeBar;
sauimone
new series: groupedbarseries
r1167 }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
sauimone
GroupedBarSeries to BarSeries
r1594 QBarSeriesPrivate::QBarSeriesPrivate(QBarSeries *q) : QAbstractBarSeriesPrivate(q)
sauimone
new series: groupedbarseries
r1167 {
}
sauimone
GroupedBarSeries to BarSeries
r1594 void QBarSeriesPrivate::scaleDomain(Domain& domain)
sauimone
new series: groupedbarseries
r1167 {
qreal minX(domain.minX());
qreal minY(domain.minY());
qreal maxX(domain.maxX());
qreal maxY(domain.maxY());
int tickXCount(domain.tickXCount());
int tickYCount(domain.tickYCount());
sauimone
removed categories from barseries. categories are now only on axis
r1321 qreal x = categoryCount();
sauimone
scaleDomain fix in groupedbarchart
r1210 qreal y = max();
sauimone
scaledomain fix for barchart
r1423 minX = qMin(minX, -0.5);
sauimone
new series: groupedbarseries
r1167 minY = qMin(minY, y);
sauimone
scaledomain fix for barchart
r1423 maxX = qMax(maxX, x - 0.5);
sauimone
new series: groupedbarseries
r1167 maxY = qMax(maxY, y);
tickXCount = x+1;
domain.setRange(minX,maxX,minY,maxY,tickXCount,tickYCount);
}
sauimone
GroupedBarSeries to BarSeries
r1594 Chart* QBarSeriesPrivate::createGraphics(ChartPresenter* presenter)
sauimone
new series: groupedbarseries
r1167 {
sauimone
GroupedBarSeries to BarSeries
r1594 Q_Q(QBarSeries);
sauimone
new series: groupedbarseries
r1167
GroupedBarChartItem* bar = new GroupedBarChartItem(q,presenter);
if(presenter->animationOptions().testFlag(QChart::SeriesAnimations)) {
presenter->animator()->addAnimation(bar);
}
presenter->chartTheme()->decorate(q, presenter->dataSet()->seriesIndex(q));
return bar;
}
sauimone
added createAxis methods to private series
r1545
sauimone
GroupedBarSeries to BarSeries
r1594 #include "moc_qbarseries.cpp"
sauimone
new series: groupedbarseries
r1167
QTCOMMERCIALCHART_END_NAMESPACE