如何使用gnuplot绘制趋势线?

如何使用gnuplot绘制趋势线?,gnuplot,Gnuplot,我试图用gnuplot绘制一组数据。(来自txt文件或csv文件的数据)然后,我尝试绘制这些数据的趋势线。但是,它不起作用 数据最初来自Microsoft Excel文件。我将它们保存为.txt文件和.csv文件。 在txt文件中,数据如下所示: 0.45 1.1  0.63 1.5  0.70 1.8  0.85 2.1  0.90 2.3  1 2.5  1.05 2.7  1.12 3  1.3 3.4  1.45 3.8  1.6 4 

我试图用gnuplot绘制一组数据。(来自txt文件或csv文件的数据)然后,我尝试绘制这些数据的趋势线。但是,它不起作用

数据最初来自Microsoft Excel文件。我将它们保存为.txt文件和.csv文件。 在txt文件中,数据如下所示:

0.45    1.1 
0.63    1.5 
0.70    1.8 
0.85    2.1 
0.90    2.3 
1   2.5 
1.05    2.7 
1.12    3 
1.3 3.4 
1.45    3.8 
1.6 4 
当我试图用以下方法绘制它时: 绘图“data.txt” 然后Gnuplot说:

line 12: Bad data on line 1 of file data.txt
有人知道我如何解决这个错误吗

我想txt文件中可能有格式错误。然后我尝试使用.csv文件。 在.csv文件中。数据如下:

0.45?,1.1?
0.63?,1.5?
0.70?,1.8?
0.85?,2.1?
0.90?,2.3?
1?,2.5?
1.05?,2.7?
1.12?,3?
1.3?,3.4?
1.45?,3.8?
1.6?,4?
我试过了 绘图“data.csv” 再一次。 然后Gnuplot只绘制其中的2个点

另一个问题,我想使用以下代码绘制一条趋势线:

  set xlabel "I"
  set ylabel "V"
  set xrange [0:2]
  set yrange [0:5] 
  set format x "%0.2f" 
  set format y '%0.2f'

  plot  'data.txt' using 1:2 title 'the lab' with points
  f(x) = m*x + b;
  fit f(x)  'data.csv' using 1:2 via m,b    
  set terminal png
  set output 'output.png';
再次使用data.csv失败。代码中有问题吗


提前谢谢。

我将您的数据放在一个文本文件中,它是正常打印的。此外,您需要将线路
设置终端
设置输出
移动到顶部。第二个数据块中的所有这些问号都有问题。可能您的数据文件有一个未处理的BOM(字节顺序标记)properly@MichaelO. 谢谢你的帮助。我已经修复了txt文件,但是趋势线没有显示。你能给我一些建议吗?thx
fit
仅计算选定参数的最佳值,但不绘制任何内容。首先
通过m,b使用1:2拟合f(x)'data.csv',然后
绘制f(x),'data.csv'使用1:2