2

gnuplotで、2つの変数を持つ関数をプロットして近似することは可能ですか?たとえば、高さhと温度Tに依存する物理関数で、T依存関係は計算するだけで、プロットすることはできません(の場合、f実験データが存在します)。hT

f(h,T) = a * h * (1 + alpha * T) + f0

ここでa、およびf0は適合によって決定されますが、alpha既知です。f最後に、y軸とx軸にプロットが必要hです。依存関係全体Tはフィットで処理する必要がありますが、で表示する必要はありませんsplot

以下は私が試したものと失敗したものです。2つのダミー変数を設定できないためだと思います。

set term png;
set output 'test.png';
set dummy h;
set dummy T;
f(h,T) = a * h * (1 + alpha * T) + f0;
fit f(h,T) 'data.txt' using 2:4:1 via a, f0;
plot f(h,T);

与えるundefined variable: h。何か案は?

4

1 に答える 1

3

ドキュメントの例から:

Examples:
       f(x) = a*x**2 + b*x + c
       g(x,y) = a*x**2 + b*y**2 + c*x*y
       FIT_LIMIT = 1e-6
       fit f(x) 'measured.dat' via 'start.par'
       fit f(x) 'measured.dat' using 3:($7-5) via 'start.par'
       fit f(x) './data/trash.dat' using 1:2:3 via a, b, c
       fit g(x,y) 'surface.dat' using 1:2:3:(1) via a, b, c

単純に次のようにすれば、スクリプトが機能することを期待します。

set term png
set output 'test.png'
f(h,T) = a * h * (1 + alpha * T) + f0
fit f(x,y) 'data.txt' using 2:4:1:(1) via a, f0

set view 90,0  #possibly `set view 0,90` or `set view map`?
splot f(x,y)
于 2013-02-06T16:51:46.677 に答える