如何使用单个管道从C程序打开两个(或更多)Gnuplot窗口?下面的代码似乎只为第二个循环创建的数据创建了图形。第一个循环创建的数据窗口未创建或未保持打开状态。我正在使用AquaTerm来显示Gnuplot图,并且不希望打开多个这样的实例。我也喜欢使用'-'
,这样我就不必创建Gnuplot要读取的文本文件了。
int main()
{
FILE *gnuplotPipe = popen("/usr/local/bin/gnuplot -persistent", "w");
fprintf(gnuplotPipe, "plot '-' with lines\n");
for (int i = 0; i < 11; i++) {
fprintf(gnuplotPipe, "%d\t%d\n", i, i);
}
fprintf(gnuplotPipe, "e\n");
fprintf(gnuplotPipe, "plot '-' with lines\n");
for (int i = 10; i < 21; i++) {
fprintf(gnuplotPipe, "%d\t%d\n", i, i);
}
fprintf(gnuplotPipe, "e\n");
return 0;
}
我尝试在绘图命令中使用-persist
,但还没有设法让它工作。
为了清楚起见,我希望能够比较不同窗口中的图形,而不是在同一窗口中。
答案 0 :(得分:4)
您可以使用不同的窗口编号使用不同的窗口:
set terminal aqua
plot x
set terminal aqua 1
plot x**2
默认号码为0
。
这适用于所有互动终端(wxt
,x11
,aqua
,qt
,windows
)。