MATLAB Function Reference    
interp2

2次元データ補間(テーブルルックアップ)

表示

詳細

ZI = interp2(X,Y,Z,XI,YI) は、XI YI の要素に対応する要素を含み、X,Y, Z で指定される2次元関数を使って、補間した行列ZI を出力します。X Y は、単調増加または単調減少で、関数meshgrid で作成されるような同じフォーマット("格子形")をもたなくてはいけません。行列X Y は、データ Z が与えられる点を指定します。範囲外の値は、NaNとして出力されます。

XI YI が行列の場合、interp2は、点 (XI(i,j),YI(i,j)) に対応する Zの値を出力します。代わりに、行ベクトルxiや列ベクトルyi として渡すことができます。この場合、interp2は、これらのベクトルをユーザが meshgrid(xi,yi)を実行したかのように解釈します。

ZI = interp2(Z,XI,YI) は、[m,n] = size(Z)に対して、X = 1:n Y = 1:m であると仮定します。

ZI = interp2(Z,ntimes) は、再帰的に、ntimes回、要素間の補間を繰り返すことにより、Z を拡張します。interp2(Z) は、interp2(Z,1)と同じです。

ZI = interp2(X,Y,Z,XI,YI,method) は、つぎの補間法を指定します。

すべての補間法で、X Y は単調関数でなくてはいけません。X Y は、meshgrid により作成されるものと同じフォーマット("格子形") をもちます。可変間隔の変数は、補間の前に XYXIYI の値を等間隔の領域に写像して取り扱われます。X Y が等間隔で、単調増加であるとき、より速い補間を行うために、'*linear''*cubic''*spline',*nearest' を使ってください。

注意

interp2 は、データ点間の補間を行います。中間点のデータに基づいて、2次元関数 f(x,y) の値を求めます。

補間は、テーブルルックアップと同じ演算を行います。テーブルルックアップの用語で説明すると、テーブルは tab = [NaN,Y; X,Z] で、interp2Y YI 、および、Xの XI の要素を調べ、その位置に基づいて、Zの要素内で補間された値 ZI を出力します。

例題

peaks 関数を細かいグリッド上に補間したの結果をプロットします。

従業員のデータが、以下のように与えられているとします。

勤続15年の従業員が1975年に得た賃金を、補間することで求められます。

参考

griddata, interp1, interp3, interpn, meshgrid


 interp1 interp3