目次 前へ 次へ

5.3 入力データのメッシュ補間

メッシュ補間を利用するとマトリックス・プロットの体裁がスムーズに見えるようにできます。これは元のマトリックスの入力データ間にリニア補間した中間値を生成するためです。

補間ファクターでは、補間再現の頻度を指定する必要があります。通常は2から6の範囲になります。6より大きい値を指定することは可能ですが、補間ファクター上で補間回数が激増することになります。また、この補間はマトリックスにすでに存在する情報以上のものを生成することはないことにご留意ください。このようなデータのリニア補間ではマトリックスの基礎データが完全に有効であることを検証することが必要です。

次の図は元データ(補間頻度=1)を1〜5回補間した場合の効果を表した例です。ここで選択しているグラフ・サイズでは、5回の補間によってグラフ・エリアの制約によりモジュールが1x1ピクセルになってしまったので、これ以上の補間は意味がありません。(8x11の元データを5回補間すると113x161のマトリックスになっています。)

プロットのサイズが異なるのは、マトリックスの各セルに整数のピクセル数を格納する必要があるためです。上のグラフでは最大のモジュール・サイズを使いましたが画像内に収まってています。つまり、見栄えが異なるわけです。

この補間を行うには2通りの方法があります。

  1. 補間ファクターをプロット関数の第2引数として指定してマトリックス・プロットを作成する場合は次のように記述します。
  2. $matrixplot = new MatrixPlot($data,4); // 補間4回

  3. 複数のプロットで同じデータを共有する場合には、新規マトリックス・プロット・オブジェクトを作成するたびに毎回設定するより、最初に補間の設定を一度行うほうが効率的です。これはユーティリティ関数を使って次のように記述します。

宣言からわかるように、これは元のデータが指定された回数補間された新規データに置換されるリファレンス・メソッドです。この方法により、大きいマトリックスを複数コピーして不要なデータを作ることが防げます。

注意:MATRAB™関数に慣れているユーザはinterp2()によく似たメッシュ補間があることに気付かれるでしょう。


目次 前へ 次へ