![]() |
| サイトマップ | |
|
3D プロットの元データを XY Many Z 形式で持っています。これを XYZ Tripret 形式に変更するにはどうしたらよいでしょうか?
XY Many Z 形式
|
![]() |
|||||||||||||||||||||||||||||||||||||||
↓ | ||||||||||||||||||||||||||||||||||||||||
XYZ Tripret 形式
|
![]() |
User-defined Transform を使えば、簡単に変換できます。1列目に X、2列目に Y、3列目以降に many Z のデータがあることを前提とします。User-Difined Transform ダイアログの空欄に以下のコードを入力して Run をクリックしてください。実行すると、最後の z データの次の列以降に XYZ Tripret データが生成されます。
out = size(col(2))+3 'Output column '出力先を最初の空き列に指定。 'XZ data generation for i=1 to size(col(2)) do for j=1 to size(col(1)) do col(out,size(col(1))*i-size(col(1))+j)=col(1)[j] 'Put X data col(out+2,size(col(1))*i-size(col(1))+j)=col(i+2)[j] 'Put Z data end for end for 'Y data generation for k=1 to size(col(2)) do for l=1 to size(col(1)) do col(out+1,size(col(1))*k-size(col(1))+l)=col(2)[k] 'Put Y data end for end for 'Title for each X,Y,Z column cell(out,0)="x" cell(out+1,0)="y" cell(out+2,0)="z"
以下は、上記と同じ手順をトランスフォームを使わずに手動で行う方法です。
手動で行うには、Index 機能を使うことで変換できます。まず、X 列を作成し、次に、YZ 列を作成するという2段階の手順で行います。 1. x 列を作成するまず、XYZ Tripret 形式の x 列に相当する部分を作成します。x 列は、y の列数だけ反復させたものですので、この例では4回反復させます。
2. yz 列を作成する同様に、yz 列を作成します。
|