1. 程式人生 > >Linux系統下將程式中的資料寫入gunplot並繪圖

Linux系統下將程式中的資料寫入gunplot並繪圖

該例為繪製遺傳演算法解決tsp問題時,最短路徑和平均路徑的變化曲線。是暑期實訓中學習的內容
以下是程式中有關繪圖部分的程式碼
freopen("1.txt","w",stdout);               //資料寫入1.txt
for(j=0;j<maxgen-1;j++)
{
   printf("%d %.5lf\n",j,avedis[j]);
   printf("%d %.5lf\n",j+1,avedis[j+1]);
}
printf("\n");
for(j=0;j<maxgen-1;j++)
{
   printf("%d %.5lf\n",j,mindis[j]);
   printf("%d %.5lf\n",j+1,mindis[j+1]);    //程式設計輸出各點,並將中間各點輸出兩次以達到連線的目的
}
FILE *fpp=popen("gnuplot","w");
        char *aa="plot for [i=0:499] \"1.txt\" index i with lines\n";
        fprintf(fpp,"%s",aa);
        fflush(fpp);
        sleep(100);         //將資料寫入gnuplot

完成程式內程式碼工作後,在Ubuntu系統開啟終端

輸入命令列  執行.c檔案

執行完成後輸入命令   ./a.out

即可完成影象的輸出