1

我有一个通往 gnuplot 的管道,我用它来绘制文件。该文件可以很好地绘制并在屏幕上生成,但是当我尝试管道时set terminal jpegset output file.jpeg屏幕上会出现垃圾。有没有其他人有同样的问题。这是代码:

    FILE *gnuplotPipe = popen("gnuplot -persist","w");
    fprintf(gnuplotPipe, "set terminal jpeg\n");     //without these two lines it works
    fprintf(gnuplotPipe, "set output %s.jpeg\n ",fileName);

    int i = 2;
    if (gnuplotPipe) 
    {  
      fprintf(gnuplotPipe, "plot ");
       ....//plot some stuff,it is tested works.
      }
      fprintf(gnuplotPipe, "\n");
      fflush(gnuplotPipe);  
      fprintf(gnuplotPipe,"exit \n");  
      pclose(gnuplotPipe);  
    }       

我也尝试在这两个命令之后刷新,但没有结果。

4

1 回答 1

2

您需要将文件名括在引号中,例如:

fprintf(gnuplotPipe, "set output \"%s.jpeg\"\n ",fileName);
于 2012-06-22T14:21:13.353 回答