2017-02-22 11 views
-3

phpでポイントを補間する必要がありますが、そのライブラリはありますか?従来の検索では、その良い結果を見つけることができませんでした。phpを使った線形補間ライブラリ

私は列xとyの値を持つテーブルを持っています。

X   Y 
10  676 
20  894 
30  1100 
40  1200 
50  1000 

線形補間に役立つ関数があるのだろうかと思っていました。たとえば、X = 35に対応するYの補間値が必要です。簡単な数学ザッツ

おかげ

+0

*書籍、ツール、ソフトウェアライブラリ、チュートリアルや他のオフサイトのリソースをお勧めしますか見つけるために私たちを尋ねる質問がオフトピックです* –

+0

あなたはこれを自分で実装するか、これを行うライブラリを持つ言語に切り替える必要があります。 – apokryfos

答えて

3

- まったくのライブラリを使用する必要はありません。

あなたがXY値が必要な場合は、Xx0)よりも小さい最大値とXx0)より大きい最小値を見つける必要がありました。 この2つの値が等しい場合は、何もする必要はなく、Yの値をテーブルに戻すだけです。

それ以外の場合は、対応する2つのYの値(y0y1)を取り、補間を行います。 =>x0 = 30x = 35のあなたのケースで

d = (x - x0)/(x1 - x0) // value in the range of [0; 1] 
y = y0 * (1 - d) + y1 * d // your interpolated value 

x1 = 40

d = (35 - 30)/(40 - 30) // 0.5 
y = 1100 * (1 - 0.5) + 1200 * 0.5 // 1150