如何将平滑的cspline曲线输出为数据文件

How to output smooth cspline curve as a data file

有谁知道如何为给定数据提取平滑cspline曲线的一些数据?

例如,有一个数据文件,其中有 2 列对应于 x 和 y 值。我可以通过以下命令绘制具有平滑 cpline 曲线的数据

p 'data' w lp, ""  smooth csplines

我想提取平滑的cpline曲线作为另一个数据文件。

使用set table 'temp.dat'将绘制的数据点重定向到外部文件

set table 'temp.dat'
plot 'myfile.dat' using 1:2 smooth cspline
unset table

测试一下

plot 'myfile.dat' using 1:2 with points title 'original points',\
     'temp.dat' using 1:2 with lines title 'smoothed curve'

这可以通过设置 table 来完成。考虑以下数据文件:

0 1
1 2
2 3
3 2
4 2
5 4
6 8
7 5
8 3
9 1

数据本身及其 csplines 插值如下所示:

要将插值打印到 table,请执行以下操作:

set samples 100
set table "table_100"
plot "data" smooth csplines
set samples 20
set table "table_20"
plot "data" smooth csplines
unset table

set samples 确定用于构造样条曲线的点数。你可以想象它:

set key left
plot "data" pt 7 t "Original data", \
     "table_100" w l t "Splines (100 samples)", \
     "table_20" w l t "Splines (20 samples)"