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. Array of QLineSeries
Forum Updated to NodeBB v4.3 + New Features

Array of QLineSeries

Scheduled Pinned Locked Moved Unsolved General and Desktop
4 Posts 3 Posters 447 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.
  • D Offline
    D Offline
    deleted286
    wrote on last edited by
    #1

    How can i put my series into an array?

    series->setColor(Qt::blue);
    series->setName(sr);
    series1->setName(sr1);
    series1->setColor(Qt::green);
    series2->setName(sr2);
    series2->setColor(Qt::yellow);
    series3->setName(sr3);
    series3->setColor(Qt::darkBlue);
    series4->setName(sr4);
    series4->setColor(Qt::cyan);
    series5->setName(sr5);
    series5->setColor(Qt::black);
    series6->setName(sr6);
    series6->setColor(Qt::gray);
    series7->setName(sr7);
    series7->setColor(Qt::red);
    
    
    chart->addSeries(series);
    chart->addSeries(series1);
    chart->addSeries(series2);
    chart->addSeries(series3);
    chart->addSeries(series4);
    chart->addSeries(series5);
    chart->addSeries(series6);
    chart->addSeries(series7);
    chart->legend()->setVisible(true);
    //chart->setTheme(QChart::ChartThemeBlueIcy);
    chart->setAnimationOptions(QChart::AllAnimations);
    
    axisX->setTickCount(5);
    axisX->setRange(0, +2);
    chart->addAxis(axisX, Qt::AlignBottom);
    series->attachAxis(axisX);
    series1->attachAxis(axisX);
    series2->attachAxis(axisX);
    series3->attachAxis(axisX);
    series4->attachAxis(axisX);
    series5->attachAxis(axisX);
    series6->attachAxis(axisX);
    series7->attachAxis(axisX);
    
    
    axisY->setTickCount(5);
    axisY->setRange(0,2);
    chart->addAxis(axisY, Qt::AlignLeft);
    series->attachAxis(axisY);
    series1->attachAxis(axisY);
    series2->attachAxis(axisY);
    series3->attachAxis(axisY);
    series4->attachAxis(axisY);
    series5->attachAxis(axisY);
    series6->attachAxis(axisY);
    series7->attachAxis(axisY);
    
    
    chartView->setRenderHint(QPainter::Antialiasing);
    ui->gridLayout->addWidget(chartView);
    

    I've tried to add

    QLineSeries *series[7];
    

    on my header. And after that, i wrote a for loop to cpp

    for(int i=0; i<8; i++)
    {
    //do something with series[i]
    }
    

    but it says me series[1] doesnt declare in this scope

    jsulmJ 1 Reply Last reply
    0
    • D deleted286

      How can i put my series into an array?

      series->setColor(Qt::blue);
      series->setName(sr);
      series1->setName(sr1);
      series1->setColor(Qt::green);
      series2->setName(sr2);
      series2->setColor(Qt::yellow);
      series3->setName(sr3);
      series3->setColor(Qt::darkBlue);
      series4->setName(sr4);
      series4->setColor(Qt::cyan);
      series5->setName(sr5);
      series5->setColor(Qt::black);
      series6->setName(sr6);
      series6->setColor(Qt::gray);
      series7->setName(sr7);
      series7->setColor(Qt::red);
      
      
      chart->addSeries(series);
      chart->addSeries(series1);
      chart->addSeries(series2);
      chart->addSeries(series3);
      chart->addSeries(series4);
      chart->addSeries(series5);
      chart->addSeries(series6);
      chart->addSeries(series7);
      chart->legend()->setVisible(true);
      //chart->setTheme(QChart::ChartThemeBlueIcy);
      chart->setAnimationOptions(QChart::AllAnimations);
      
      axisX->setTickCount(5);
      axisX->setRange(0, +2);
      chart->addAxis(axisX, Qt::AlignBottom);
      series->attachAxis(axisX);
      series1->attachAxis(axisX);
      series2->attachAxis(axisX);
      series3->attachAxis(axisX);
      series4->attachAxis(axisX);
      series5->attachAxis(axisX);
      series6->attachAxis(axisX);
      series7->attachAxis(axisX);
      
      
      axisY->setTickCount(5);
      axisY->setRange(0,2);
      chart->addAxis(axisY, Qt::AlignLeft);
      series->attachAxis(axisY);
      series1->attachAxis(axisY);
      series2->attachAxis(axisY);
      series3->attachAxis(axisY);
      series4->attachAxis(axisY);
      series5->attachAxis(axisY);
      series6->attachAxis(axisY);
      series7->attachAxis(axisY);
      
      
      chartView->setRenderHint(QPainter::Antialiasing);
      ui->gridLayout->addWidget(chartView);
      

      I've tried to add

      QLineSeries *series[7];
      

      on my header. And after that, i wrote a for loop to cpp

      for(int i=0; i<8; i++)
      {
      //do something with series[i]
      }
      

      but it says me series[1] doesnt declare in this scope

      jsulmJ Offline
      jsulmJ Offline
      jsulm
      Lifetime Qt Champion
      wrote on last edited by
      #2

      @suslucoder said in Array of QLineSeries:

      I've tried to add

      Where?

      "but it says me series[1] doesnt declare in this scope" - again: where did you declare the array?

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      D 1 Reply Last reply
      1
      • jsulmJ jsulm

        @suslucoder said in Array of QLineSeries:

        I've tried to add

        Where?

        "but it says me series[1] doesnt declare in this scope" - again: where did you declare the array?

        D Offline
        D Offline
        deleted286
        wrote on last edited by
        #3

        @jsulm in

        void VeriGoster::Timer_Slot()
        {
            static float q_x=0;
            auto Timer = [=] (QQueue<double> &queue, QLineSeries &series)->void
            {
                if(!queue.isEmpty())
                      {
                         double num=queue.dequeue();
                         q_x += 0.1;
                         series.append(q_x, num);
                         chart->update();
                         chart->scroll(6,0);
                         qDebug() << q_x << num;
                       }
            };
        
             Timer(queue, *series);
             Timer(queue1,*series1 );
             Timer(queue2, *series2);
             Timer(queue3, *series3);
             Timer(queue4, *series4);
             Timer(queue5, *series5);
        
        JonBJ 1 Reply Last reply
        0
        • D deleted286

          @jsulm in

          void VeriGoster::Timer_Slot()
          {
              static float q_x=0;
              auto Timer = [=] (QQueue<double> &queue, QLineSeries &series)->void
              {
                  if(!queue.isEmpty())
                        {
                           double num=queue.dequeue();
                           q_x += 0.1;
                           series.append(q_x, num);
                           chart->update();
                           chart->scroll(6,0);
                           qDebug() << q_x << num;
                         }
              };
          
               Timer(queue, *series);
               Timer(queue1,*series1 );
               Timer(queue2, *series2);
               Timer(queue3, *series3);
               Timer(queue4, *series4);
               Timer(queue5, *series5);
          
          JonBJ Online
          JonBJ Online
          JonB
          wrote on last edited by
          #4

          @suslucoder
          And where does the code you show generate

          but it says me series[1] doesnt declare in this scope

          ?

          Where is the for loop you say you are trying?

          Also, where does it use the

          QLineSeries *series[7];
          

          you say you are having trouble with? I do not see it using any array of anything, which is what your whole question is about...

          1 Reply Last reply
          1

          • Login

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