分析またはグラフ作成時に、ワークシートから行列に変換またはその反対の操作をして、データを再構成する必要があるかもしれません。このページはワークシートを行列に変換する時のサンプルと情報を紹介します。なお、反対の操作をする際は行列をワークシートに変換するを確認してください。
ワークシートに含まれるデータは、一連の グリッディングXファンクションを使って行列に変換することができます。
w2m Xファンクションは行列の形式で入力されているワークシートを行列に変換します。元のワークシートのデータには、最初の列、最初の行、ヘッダ行にXまたはY座標値を含めることができます。しかし、行列の座標は等間隔でなければならいので、元のワークシートに等間隔なX/Y値が入力されている必要があります。
X/Y座標値が等間隔でなければ、行列に変換するのではなく、 仮想行列 を使用してください。
次のサンプルはワークシートから直接変換する方法を示しています。
// 新しいワークシートを作成 newbook; // サンプルデータをインポート string fname$ = system.path.program$ + "\samples\Matrix Conversion and Gridding\DirectXY.dat"; impasc; // ワークシートを行列に変換、最初の行がXで最初の列がY w2m xy:=xcol xlabel:=row1 ycol:=1; // 行列ウィンドウに X/Y 値を表示 page.cntrl = 2;
ワークシートデータがXYZ列形式で構成されているとき、グリッディング法を使ってこのようなデータを行列に変換します。多くのグリッディング法が利用でき、これにより元のデータを補間し、指定した次数での等間隔なXYで、値の配列を生成します。
次のサンプルは、Renka-Clineグリッディング法でXYZワークシートデータを変換し、新しい行列から3Dグラフを作成します。
// シート無しで新しいワークシートを作成 newbook; // サンプルデータをインポート string fname$ = system.path.program$ + "\samples\Matrix Conversion and Gridding\XYZ Random Gaussian.dat"; impasc; // ワークシートデータをRenka-Clineグリッディング法で20 x 20の行列に変換 xyz_renka 3 20 20; // 3Dカラーマップグラフを作成 worksheet -p 242 cmap;