Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. how to deal with two QBarSeries overlapping ?

how to deal with two QBarSeries overlapping ?

Scheduled Pinned Locked Moved Unsolved General and Desktop
1 Posts 1 Posters 337 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    joy_yelehuan
    wrote on last edited by
    #1

    Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
    {
    ui->setupUi(this);
    mMainLayout = new QHBoxLayout(this);
    mChartView = new QChartView(this);

    mMainLayout->addWidget(mChartView);
    
    mChart = new QChart();
    mChartView->setChart(mChart);
    
    xAxis = new QValueAxis;
    mChart->addAxis(xAxis, Qt::AlignBottom);
    xAxis->setRange(0, 5);
    
    yLeftAxis = new QValueAxis;
    mChart->addAxis(yLeftAxis, Qt::AlignLeft);
    yLeftAxis->setRange(1, 5);
    
    yRightAxis = new QValueAxis;
    mChart->addAxis(yRightAxis, Qt::AlignRight);
    yRightAxis->setRange(10, 90);
    

    // twoSeries();
    oneSeries();
    this->resize(800, 600);
    }

    void Widget::oneSeries(){
    QBarSeries *barSeries2 = new QBarSeries(mChart);
    mChart->addSeries(barSeries2);
    barSeries2->attachAxis(xAxis);
    barSeries2->attachAxis(yRightAxis);
    barSeries2->setBarWidth(0.1);
    QBarSet *rightData = new QBarSet("right");
    rightData->append(QList<qreal>() << 10 << 40 << 30 << 40 << 20);
    barSeries2->append(rightData);
    barSeries2->setOpacity(0.5);

    mChart->setGeometry(100, 30, 40, 50);
    mChart->setPos(QPointF(100, 20));
    QBarSeries *barSeries1 = new QBarSeries(mChart);
    mChart->addSeries(barSeries1);
    
    barSeries1->attachAxis(xAxis);
    barSeries1->attachAxis(yLeftAxis);
    QBarSet *leftData = new QBarSet("left");
    leftData->append(QList<qreal>() << 1 << 2 << 3 << 4 << 4);
    barSeries1->append(leftData);
    barSeries1->setOpacity(0.5);
    barSeries1->setBarWidth(0.5);
    

    }

    void Widget::twoSeries(){
    QBarSeries *barSeries2 = new QBarSeries(mChart);
    mChart->addSeries(barSeries2);
    barSeries2->attachAxis(xAxis);
    barSeries2->attachAxis(yRightAxis);
    barSeries2->setBarWidth(0.1);
    QBarSet *rightData = new QBarSet("right");
    rightData->append(QList<qreal>() << 10 << 40 << 30 << 40 << 20);
    barSeries2->append(rightData);
    barSeries2->setOpacity(0.5);

    QBarSeries *barSeries1 = new QBarSeries(mChart);
    mChart->addSeries(barSeries1);
    
    barSeries1->attachAxis(xAxis);
    barSeries1->attachAxis(yLeftAxis);
    QBarSet *leftData = new QBarSet("left");
    leftData->append(QList<qreal>() << 1 << 2 << 3 << 4 << 4);
    barSeries1->append(leftData);
    barSeries1->setOpacity(0.5);
    barSeries1->setBarWidth(0.5);
    

    }

    Widget::~Widget()
    {
    delete ui;
    }

    1 Reply Last reply
    0

    • Login

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved