From 44871935507e215c9d7881911a1c9ade81cf5770 Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Thu, 8 Aug 2013 15:10:54 +0300 Subject: Value axis labels support for barchart MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit + Subtick support for value axes + misc fixes Change-Id: I409670312ec0dede1a1faa33c30c5b6bc7c7ee29 Reviewed-by: Tomi Korpipää --- src/datavis3d/engine/bars3dcontroller.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/datavis3d/engine/bars3dcontroller.cpp') diff --git a/src/datavis3d/engine/bars3dcontroller.cpp b/src/datavis3d/engine/bars3dcontroller.cpp index 6188d203..bba744ec 100644 --- a/src/datavis3d/engine/bars3dcontroller.cpp +++ b/src/datavis3d/engine/bars3dcontroller.cpp @@ -270,7 +270,8 @@ void Bars3dController::setDataProxy(QBarDataProxy *proxy) QObject::connect(m_data, &QBarDataProxy::rowsRemoved, this, &Bars3dController::handleRowsRemoved); QObject::connect(m_data, &QBarDataProxy::rowsInserted, this, &Bars3dController::handleRowsInserted); - // emit something? Renderer might be interested? + adjustValueAxisRange(); + m_valuesDirty = true; } QBarDataProxy *Bars3dController::dataProxy() @@ -478,13 +479,15 @@ int Bars3dController::rowCount() void Bars3dController::adjustValueAxisRange() { QValueAxis *valueAxis = static_cast(m_axisY); - if (valueAxis && valueAxis->isAutoAdjustRange()) { + if (valueAxis && valueAxis->isAutoAdjustRange() && m_data) { QPair limits = m_data->dptr()->limitValues(0, m_rowCount, 0, m_columnCount); if (limits.first < 0) { // TODO: Currently we only support symmetric y-axis for bar chart if there are negative values qreal maxAbs = qMax(qFabs(limits.first), qFabs(limits.second)); // Call private implementation to avoid unsetting auto adjust flag valueAxis->dptr()->setRange(-maxAbs, maxAbs); + } else if (limits.second == 0.0) { + valueAxis->dptr()->setRange(0.0, 1.0); // Only zero value values in data set, set range to something. } else { valueAxis->dptr()->setRange(0.0, limits.second); } -- cgit v1.2.3