web-dev-qa-db-ja.com

滑らかなcspline曲線をデータファイルとして出力する方法

特定のデータに対して滑らかなcspline曲線のデータを抽出する方法を知っている人はいますか?

たとえば、xとyの値に対応する2つの列を持つデータファイルがあります。次のコマンドで滑らかなcpline曲線でデータを描画できます

p 'data' w lp, ""  smooth csplines

スムーズなcpline曲線を別のデータファイルとして抽出します。

10
user4914499

これは、tableを設定することで実行できます。次のデータファイルを検討してください。

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

データ自体とそのcsplines補間は次のようになります。

enter image description here

補間をテーブルに出力するには、次のようにします。

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)"

enter image description here

13
Miguel

使用する 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'
5
Christoph