C++ 我正在尝试使用c+;通过命令行打开gnuplot+;并编译一个图表

C++ 我正在尝试使用c+;通过命令行打开gnuplot+;并编译一个图表,c++,cmd,gnuplot,popen,C++,Cmd,Gnuplot,Popen,我的代码是 int gnuplot() { FILE *gnu; gnu = _popen(" gnuplot ", "r"); fprintf(gnu, "plot \'C:/Users/user/Documents/gnuplot/cpp/FFT/file.dat\' with linespoints \n "); fflush(gnu); // I'm not sure how or if this will help, I thought it wa

我的代码是

int gnuplot() {

    FILE *gnu;
    gnu = _popen(" gnuplot ", "r");

    fprintf(gnu, "plot \'C:/Users/user/Documents/gnuplot/cpp/FFT/file.dat\' with linespoints \n ");

    fflush(gnu); // I'm not sure how or if this will help, I thought it was related

    _pclose(gnu);

     return 0;
}
目前,我只能打开gunplot窗口的CMD窗口,但不能输入或退出plot命令

gnu = _popen(" gnuplot ", "r");
它应该是写模式

gnu = _popen("gnuplot ", "w");
它应该是写模式

gnu = _popen("gnuplot ", "w");

对不起,我应该补充说我已经试过了。如果我把“r”改为“w”,它会很快打开和关闭,几乎看不到。如果我删除行_pclose(gnu);,也是一样的;。如何使它关闭cmd,但保持gnuplot窗口打开?一种方法:打印到图像文件,因此不需要保持gnuplot窗口打开另一种方法:使用
system(“gnuplot-e\”plot\'C:/Users/user/Documents/gnuplot/cpp/FFT/file.dat\”和linespoints\”而不是popen。这是我现在的代码,它让我知道gnuplot无法识别,也没有创建任何文件。文件*gnuopener;gnuopener=_popen(“gnuplot”,“w”);fprintf(gnuopener,“plot'C:/Users/yes/Documents/gnuplot/cpp/FFT/jesus.dat\”和linespoints\n“);fprintf(gnuopener,set term postscript\n);fprintf(gnuopener,“设置输出\”jesus.ps \“\n”);fprintf(gnuopener,“replot\n”);fprintf(gnuopener,“设置术语png\n”);fprintf(gnuopener,“设置输出\”jesus.png \“\n”);fprintf(gnuopener,“replot\n”);fprintf(gnuopener,“设置术语赢\n”);_pclose(gnuopener);对不起,我应该补充说我已经试过了。如果我把“r”改为“w”,它会很快打开和关闭,几乎看不到。如果我删除行_pclose(gnu);,也是一样的;。如何使它关闭cmd,但保持gnuplot窗口打开?一种方法:打印到图像文件,因此不需要保持gnuplot窗口打开另一种方法:使用
system(“gnuplot-e\”plot\'C:/Users/user/Documents/gnuplot/cpp/FFT/file.dat\”和linespoints\”而不是popen。这是我现在的代码,它让我知道gnuplot无法识别,也没有创建任何文件。文件*gnuopener;gnuopener=_popen(“gnuplot”,“w”);fprintf(gnuopener,“plot'C:/Users/yes/Documents/gnuplot/cpp/FFT/jesus.dat\”和linespoints\n“);fprintf(gnuopener,set term postscript\n);fprintf(gnuopener,“设置输出\”jesus.ps \“\n”);fprintf(gnuopener,“replot\n”);fprintf(gnuopener,“设置术语png\n”);fprintf(gnuopener,“设置输出\”jesus.png \“\n”);fprintf(gnuopener,“replot\n”);fprintf(gnuopener,“设置术语赢\n”);_pclose(gnuopener);只是想让你知道。有一个GNUTFICE C++接口,只需让你知道。有一个GNUTFICE C++接口可用