Gnuplot:隐藏窗口

时间:2013-07-16 11:31:34

标签: c gnuplot

我有这段代码

int draw_cell_bary(char *filename, char *filenameOutput, int format){

char buff[500];
FILE *f;

char draw_name_file_pattern[] = "%s%s%s%s%s";
f = popen("gnuplot", "w");
//sprintf(buff, draw_name_file_pattern ,"plot '",filename,"' with lines,' \n set term postscript\n set output \"",filenameOutput,"\"\n replot\n");
switch(format){
    case 1:
        sprintf(buff, draw_name_file_pattern ,"plot '",filename,"' \n set terminal png\n set output \"",filenameOutput,"\"\n replot\n");
        break;

        sprintf(buff, draw_name_file_pattern ,"plot '",filename,"' \n set term postscript\n set output \"",filenameOutput,"\"\n replot\n");
    case 2:
        break;

}
fprintf(f,"%s", buff);
fflush(f);
pclose(f);

return 1;
}

此代码工作正常,但当我使用它创建绘图时,窗口会出现在弹出窗口中,并立即关闭。 我希望gnuplot中的窗口保持隐藏状态,并且创建输出而无需用户查看。

我找到了--noraise,但我不确定这是不是我想要的。

由于

1 个答案:

答案 0 :(得分:0)

plot命令是你发送给gnuplot的命令中的第一个命令 - 由于默认终端没有被更改,gnuplot会显示在屏幕上,然后消失。

如果在plot之后移动set terminal ...; set output命令,则窗口将不会出现,您将不需要replot命令。