2015-06-12 22 views
0

我正在使用gnuplot和函数拟合设施来执行最小二乘拟合我的一些数据。gnuplot - 如何适合每N个数据点的函数

我有很多数据点(有时数千万),因此适合所有的数据点是不可能的。 (或者至少太慢而实用。)

有可能用关键字every绘制数据点(编辑:!应该是pointintervalevery),其次是一个整数,N,绘制仅每隔第N个点。

例如plot 'data.csv' using 1:2 pointinterval 1000绘制每第千个数据点。在绘制数十万的点时非常有用 - 否则您将看不到任何有用的东西。

是否有类似的方式来进行拟合,即只适合每1000点?

我试图fit 'data.csv' f(x) using 1:2 pointinterval 1000 via a,b其中ab是我f(x)的参数 - 但我只是得到一个错误:';' expected

我也试过用googling这个和阅读gnuplot绘图的文档,但没有找到任何东西。

另外,我可以改变我的程序代码,只写入数据文件的第1000个点,但然后我将不得不有2个大量的数据文件 - 一个与所有的点和一个在每1000个数据点1 ...这看起来很浪费。

编辑:我不知道为什么我认为every是这个正确的语法。原来应该是pointintervalpi简称),后面跟一个整数。

但是,这只适用于绘图,而不是函数拟合,所以问题仍然是开放的。

+0

'every'是正确的选择,我不知道为什么你认为它错了。 'pointinterval'还有其他应用程序,请参阅文档。 'fit'data.csv'f(x)u 1:2每100通过a,b'应该可以正常工作。 – Christoph

+0

关于我的评论的任何更新? – Christoph

+0

@Christoph是的,我现在已经有了一切为了绘图而工作。我将不得不再次检查配件,需要一些代码修改... – user3728501

回答