diff --git a/examples/customchart/main.cpp b/examples/customchart/main.cpp index 0fd1af9..f63587b 100644 --- a/examples/customchart/main.cpp +++ b/examples/customchart/main.cpp @@ -63,8 +63,8 @@ int main(int argc, char *argv[]) //![2] //![3] - QBarCategoriesAxis* axisX = new QBarCategoriesAxis; - QBarCategoriesAxis* axisY = new QBarCategoriesAxis; + QBarCategoriesAxis* axisX = new QBarCategoriesAxis(); + QBarCategoriesAxis* axisY = new QBarCategoriesAxis(); // Customize axis label font QFont labelsFont; @@ -94,14 +94,14 @@ int main(int argc, char *argv[]) //![4] axisX->append("low"); axisX->append("optimal"); - axisX->append("high"); - + axisX->append("high"); axisX->setRange("low","high"); + axisY->append("slow"); - axisY->append("medium"); + axisY->append("med"); axisY->append("fast"); axisY->setRange("slow","fast"); -// axisY->setTicksCount(4); + chart->setAxisX(axisX, series); chart->setAxisY(axisY, series); //![4] diff --git a/src/axis/chartcategoriesaxisx.cpp b/src/axis/chartcategoriesaxisx.cpp index 26d387d..318fa55 100644 --- a/src/axis/chartcategoriesaxisx.cpp +++ b/src/axis/chartcategoriesaxisx.cpp @@ -19,13 +19,11 @@ ****************************************************************************/ #include "chartcategoriesaxisx_p.h" -#include "qabstractaxis.h" #include "chartpresenter_p.h" #include "chartanimator_p.h" +#include "qbarcategoriesaxis.h" #include -#include #include -#include static int label_padding = 5; diff --git a/src/axis/chartcategoriesaxisy.cpp b/src/axis/chartcategoriesaxisy.cpp index b8f7593..cd72b04 100644 --- a/src/axis/chartcategoriesaxisy.cpp +++ b/src/axis/chartcategoriesaxisy.cpp @@ -19,11 +19,10 @@ ****************************************************************************/ #include "chartcategoriesaxisy_p.h" -#include "qabstractaxis.h" #include "chartpresenter_p.h" #include "chartanimator_p.h" +#include "qbarcategoriesaxis.h" #include -#include #include #include @@ -31,7 +30,8 @@ static int label_padding = 5; QTCOMMERCIALCHART_BEGIN_NAMESPACE -ChartCategoriesAxisY::ChartCategoriesAxisY(QAbstractAxis *axis,ChartPresenter *presenter) : ChartAxis(axis,presenter) +ChartCategoriesAxisY::ChartCategoriesAxisY(QBarCategoriesAxis *axis,ChartPresenter *presenter) : ChartAxis(axis,presenter), + m_categoriesAxis(axis) { } @@ -77,7 +77,7 @@ void ChartCategoriesAxisY::updateGeometry() Q_ASSERT(layout.size() == ticksList.size()); QGraphicsLineItem *lineItem = static_cast(axis.at(0)); - lineItem->setLine(m_rect.left(), m_rect.bottom(), m_rect.right(), m_rect.bottom()); + lineItem->setLine(m_rect.left() , m_rect.top(), m_rect.left(), m_rect.bottom()); for (int i = 0; i < layout.size(); ++i) { QGraphicsLineItem *lineItem = static_cast(lines.at(i)); @@ -88,7 +88,7 @@ void ChartCategoriesAxisY::updateGeometry() const QRectF& rect = labelItem->boundingRect(); QPointF center = rect.center(); labelItem->setTransformOriginPoint(center.x(), center.y()); - labelItem->setPos(layout[i] - (layout[i] - layout[i-1])/2 - center.x(), m_rect.bottom() + label_padding); + labelItem->setPos(m_rect.left() - rect.width() - label_padding , layout[i] - (layout[i] - layout[i-1])/2 -center.y()); m_minWidth+=rect.width(); m_minHeight=qMax(rect.height()+label_padding,m_minHeight); }else{ @@ -98,10 +98,10 @@ void ChartCategoriesAxisY::updateGeometry() if ((i+1)%2 && i>1) { QGraphicsRectItem *rectItem = static_cast(shades.at(i/2-1)); - rectItem->setRect(layout[i-1],m_rect.top(),layout[i]-layout[i-1],m_rect.height()); + rectItem->setRect(m_rect.left(),layout[i],m_rect.width(),layout[i-1]-layout[i]); } lineItem = static_cast(axis.at(i+1)); - lineItem->setLine(layout[i],m_rect.bottom(),layout[i],m_rect.bottom()+5); + lineItem->setLine(m_rect.left()-5,layout[i],m_rect.left(),layout[i]); } } diff --git a/src/axis/chartcategoriesaxisy_p.h b/src/axis/chartcategoriesaxisy_p.h index d93efc9..ffe1fa9 100644 --- a/src/axis/chartcategoriesaxisy_p.h +++ b/src/axis/chartcategoriesaxisy_p.h @@ -41,7 +41,7 @@ class ChartPresenter; class ChartCategoriesAxisY : public ChartAxis { public: - ChartCategoriesAxisY(QAbstractAxis *axis, ChartPresenter *presenter); + ChartCategoriesAxisY(QBarCategoriesAxis *axis, ChartPresenter *presenter); ~ChartCategoriesAxisY(); AxisType axisType() const { return Y_AXIS;}