2015-05-25 31 views
0

我努力學習的gnuplot與繪製海槽例如C語言編程,但下面的消息不斷重複,當我嘗試繪圖: 錯誤,而試圖繪製C文件與gnuplot的

"Warning: Skipping data file with no valid points" 
"x rang is invalid" 

我不知道這是什麼意思。我編譯了這個文件,它沒有給我任何錯誤,這是來自一個已經制作的例子。爲什麼我不能陰謀?

的代碼如下:

#include <stdio.h> 
#include <math.h> 

int main(void) 
{ 
    double t = 0.0, x, y; 
    FILE *fp; 
    fp = fopen("data6-7.txt","w"); 
    do 
    { 
     x = cos(2*M_PI*t); 
     y = sin(2*M_PI*t); 

     fprintf(fp, "%f %f %f\n", t, x, y); 

     t = t + 0.01; 
    } while (t <= 1.0); 
    fclose(fp); 

    return 0; 
} 
+0

你試圖繪製什麼c文件,爲什麼你的代碼中有無效字符?你在哪裏調用'gnuplot'? –

+0

@iharob:這是使用shift-jis編碼時的反斜線字符 – 6502

+0

@iharob我不知道,我正在使用一個老師給我的例子,但它不工作。 – Xmayro

回答

1

後您編譯並運行程序,您必須創建一個plot文件告訴gnuplot如何讀取數據(更容易比填鴨式的命令行上的所有選項)。針對您的案例的示例:

plot \ 
"data6-7.txt" using 1:2 title 'cos', \ 
"data6-7.txt" using 1:3 title 'sin' 

另存爲myplot.plt。然後調用gnuplot有:

gnuplot -p myplot.plt 

.plt文件的格式應該是相當明顯的。您可以根據任何其他文件中的數據繪製任何文件中的數據。在只有一個數據文件(這裏等)的情況下,格式爲:

plot \ 
"filename" using (colum #):(column #) title 'sometitle', \ 
...... 

PLOT命令是一行(所以線延續是必需的)。 (colum #):(column #)只是表示將來自第一列#的數據作爲相對於下一列#的獨立數據和依賴值的數據。

有許多選項/調整繪圖(繪圖到.png,軸標籤,縮放等)。看看手冊(和例子)在線或通常在您的/usr/share/gnuplot/4.X/gnuplot.pdf文件。