如何在gnuplot中用横坐标计算平均值绘制图形

时间:2013-08-25 18:39:55

标签: gnuplot average

我的数据文件格式为fallows:

100;2.123;4.123
100;2.113;5.213
100;2.544;6.234
100;2.324;4.234
200;2.543;3.123
200;2.543;5.123
...

第一列是函数的参数,第二列是函数的结果。由于其他因素,第2列和第3列的值对于第1列的相同值是不同的,并且我想绘制一个图表来计算第2列和第3列中具有相同第1列的所有值的算术平均值。

gnuplot有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

要计算共享相同第一个值的所有值的算术平均值,可以使用smooth unique。要获得相同横坐标的第2和第3列的所有值的平均值,可以使用

set datafile separator ';'
plot 'datafile' using 1:(($2+$3)/2.0) smooth unique

这使数据在x - 值中单调,然后用一个具有平均y - 值的点替换所有具有相同横坐标的点。

如果是你只想要第二列的平均值,而是使用

plot 'datafile' using 1:2 smooth unique

答案 1 :(得分:0)

是的! 首先取代每个;然后是空白 试试这个命令

plot "your_data_file" using ($1):(($2+$3)/2)