diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-08-07 14:52:28 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-08-08 08:21:37 +0300 |
commit | ebee290095f9a32dbcf5956e9fed50d2610cbfe1 (patch) | |
tree | c9260232aa82517c12bbcd94ef3d004b29860959 /examples/widget | |
parent | b3e10fcc8403bc1a0d9d4c107b52eb10af0ecffa (diff) |
Tickcount and both automatic and explicit range setting via axes
- Tick count moved to QValueAxis.
- QValueAxis adjusts range to data by default on barcharts.
- QValueaxis explicit range setting now works for barchart.
Change-Id: I2c0afcab34b74a848144fda41d9135dcdb510354
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/widget')
-rw-r--r-- | examples/widget/chart.cpp | 18 | ||||
-rw-r--r-- | examples/widget/chart.h | 4 |
2 files changed, 9 insertions, 13 deletions
diff --git a/examples/widget/chart.cpp b/examples/widget/chart.cpp index f34e6835..1a8d6c5d 100644 --- a/examples/widget/chart.cpp +++ b/examples/widget/chart.cpp @@ -60,9 +60,9 @@ ChartModifier::ChartModifier(Q3DBars *barchart) m_barSpacingX(0.1f), m_barSpacingZ(0.1f), m_fontSize(20), - m_ticks(20), - m_tickStep(1), - m_minval(-15.2f) + m_ticks(10), + m_minval(-20.0), // TODO Barchart Y-axis currently only properly supports zero-centered ranges + m_maxval(20.0) { // Don't set any styles or specifications, start from defaults // Generate generic labels @@ -100,15 +100,14 @@ void ChartModifier::restart(bool dynamicData) // Set selection mode to zoom row m_chart->setSelectionMode(ModeZoomRow); m_chart->setFont(QFont("Times Roman", 20)); - m_chart->setTickCount(m_ticks, m_tickStep, m_minval); } else { m_chart->dataProxy()->resetArray(0); // Set up sample space m_chart->setupSampleSpace(m_rowCount, m_columnCount); // Set selection mode to full m_chart->setSelectionMode(ModeBarRowAndColumn); - // Reset tick count to default - m_chart->setTickCount(0, 0); + m_chart->valueAxis()->setTickCount(m_ticks * 2); + m_chart->valueAxis()->setAutoAdjustRange(true); m_chart->rowAxis()->setTitle("Generic Row"); m_chart->columnAxis()->setTitle("Generic Column"); @@ -155,6 +154,8 @@ void ChartModifier::addDataSet() m_chart->valueAxis()->setTitle("Average temperature (" + celsiusString + ")"); m_chart->rowAxis()->setLabels(years); m_chart->columnAxis()->setLabels(months); + m_chart->valueAxis()->setTickCount(m_ticks); + m_chart->valueAxis()->setRange(m_minval, m_maxval); // Create data rows QBarDataArray *dataSet = new QBarDataArray; @@ -172,11 +173,6 @@ void ChartModifier::addDataSet() dataSet->append(dataRow); } - // Set tick count (4 steps of 5 degrees, with absolute minimum of -16C, even though we don't have quite that low temperatures in the data) - //m_chart->setTickCount(4, 5, -16.0f); - // ..or 20 steps of 1 degree, with absolute minimum of -15.2C - m_chart->setTickCount(m_ticks, m_tickStep, m_minval); - // Set up sample space based on prepared data m_chart->setupSampleSpace(years.size(), months.size()); diff --git a/examples/widget/chart.h b/examples/widget/chart.h index 8b7aaa39..3c759d27 100644 --- a/examples/widget/chart.h +++ b/examples/widget/chart.h @@ -99,8 +99,8 @@ private: float m_barSpacingZ; int m_fontSize; int m_ticks; - float m_tickStep; - float m_minval; + qreal m_minval; + qreal m_maxval; QStringList m_genericRowLabels; QStringList m_genericColumnLabels; }; |