построение графика на последнем графике с использованием gnuplot-iostream - PullRequest
0 голосов
/ 05 июня 2018

Я использую gnuplot-iostream для построения точек данных.

Итак, у меня есть два набора.Я могу успешно построить первый набор, но он не работает во втором.

             first_pts = {....};
             second_pts = {....};
             Gnuplot gp2d;
             gp2d << "set xrange [-5:5]\n";
             gp2d << "set yrange [-5:5]\n";
             for ( auto i = 0 ; i < 2 ; i ++ ) {
                 if ( i == 0 )
                   gp2d << "plot '-' with points title 'first'\n";
                   gp2d.send1d(first_pts);
                 else    
                   gp2d << "replot\n";
                   gp2d.send1d(second_pts);
                 }

Я намеренно не хочу, чтобы данные наносились на график за одну итерацию, потому что это не будет работать в моей реальной среде.Пересадка здесь, конечно, не так, и, следовательно, вопрос - что правильно?

1 Ответ

0 голосов
/ 05 июня 2018

Хорошо, я понял это.Просто добавьте еще один вход в команду gnuplot plot, и gnuplot будет ждать второй точки перед построением графика.

         first_pts = {....};
         second_pts = {....};
         Gnuplot gp2d;
         gp2d << "set xrange [-5:5]\n";
         gp2d << "set yrange [-5:5]\n";
         for ( auto i = 0 ; i < 2 ; i ++ ) {
             if ( i == 0 )
               gp2d << "plot '-' with points title 'first', '-' with points title 'second'\n";
               gp2d.send1d(first_pts);
             else    
               //gp2d << "replot\n";
               gp2d.send1d(second_pts);
             }
...