我有兩個資料集(x,y1)和(x,y2),我從計算結果中得到,并將這些檔案寫入“data1.tmp”和“data2.tmp”。我想用這兩個資料集在 Gnuplot 中繪圖。
#include <iostream>
#include <cstdlib>
int main()
{
FILE* gnupipe1, *gnupipe2;
const char* GnuCommands1[] = {"set title \"v vs x\"","plot \'data1.tmp\' with lines"};
const char* GnuCommands2[] = {"set title \"y vs x\"","plot \'data2.tmp\' with lines"};
gnupipe1 = _popen("gnuplot -persistent","w");
gnupipe2 = _popen("gnuplot -persistent", "w");
for (int i = 0; i < 2; i )
{
fprintf(gnupipe1,"%s\n",GnuCommands1[i]);
fprintf(gnupipe2,"%s\n", GnuCommands2[i]);
}
return 0;
}
現在,當我運行程式時,會顯示兩個視窗,準確地繪制資料。
如何以這種方式繪制多個資料集?在同一個視窗中說(x,y1)和(x,y2)?
uj5u.com熱心網友回復:
您正在打開兩個不同的 gnuplot,您不需要這樣做。
#include <iostream>
#include <cstdlib>
int main()
{
FILE* gnupipe1;
const char* GnuCommands1[] = {"set title \"v vs x\"",
"plot \'data1.tmp\' with lines, \'data2.tmp\' with lines"};
gnupipe1 = _popen("gnuplot -persistent","w");
for (int i = 0; i < 2; i )
fprintf(gnupipe1,"%s\n",GnuCommands1[i]);
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/441489.html
