グラフのフォーマット

内容

グラフウィンドウ

グラフウィンドウは、Page (オブジェクト)に結びついたビジュアルページで構成されます。 各々のグラフページは、layer オブジェクトと関連づけられる、少なくとも1つのビジュアルページを含んでいます。 グラフレイヤには、layerオブジェクトのサブオブジェクトである layer.x および layer.y オブジェクトと結びついた1セットのXY軸を含みます。

グラフページまたはグラフレイヤにマッピングされた範囲変数がある場合、pagelayerという言葉の変わりに、範囲変数名を使うことができます。

ページプロパティ

page オブジェクトは、アクティブグラフウィンドウのプロパティにアクセスしたり、修正したりできます。 このオブジェクトのすべてのプロパティの一覧を出力するには

page.=

一覧は数値とテキストのプロパティの両方を含みます。 テキスト(文字列)のプロパティ値をセットするとき、プロパティ名の後に$ 記号を付けます。

アクティブウィンドウのショートネームを読み込むには

page.name$="Graph3";

アクティブウィンドウのロングネームを読み込むには

page.longname$="This name can contain spaces";

page オブジェクトの代わりに範囲変数を使ってグラフのプロパティまたは属性にアクセスすることもできます。 範囲変数を使うことの利点は、目的のグラフがアクティブであるかどうかに関係なく操作できることです。

以下のサンプルは、範囲変数を使って、名前で目的のグラフを指しアクティブグラフレイヤをレイヤ2にセットします。 宣言されると、範囲変数を pageの代わりに使うことができます。

//グラフを指すRange変数を作成
range rGraph = [Graph3];
//範囲はページオブジェクトのプロパティ
rGraph.active=2;

レイヤのプロパティ

layer オブジェクトは、グラフレイヤのプロパティにアクセスしたり、修正したりできます。

グラフレイヤのサイズをセットするには

//レイヤ領域の単位を cmにセット
layer.unit=3;
//幅をセット
layer.width=5;
//高さをセット 
layer.height=5;

レイヤの背景色を塗る

laycolor Xファンクションはレイヤの背景色を塗りつぶすのに使います。 関数に渡される色指定の値は、作図の詳細で表示されるのと同じOriginのカラーリスト に対応しています(1=黒, 2=赤, 3=緑など)。

レイヤ1の背景色を緑にするには

laycolor layer:=1 color:=3;

スピードモードのプロパティをセット

speedmode Xファンクションは、レイヤのスピードモードのプロパティをセットするのに使います。

凡例を更新

legendupdate Xファンクションは、ページ/レイヤにあるグラフの凡例を更新したり、再構築するのに使います。

軸のプロパティ

layerオブジェクトの layer.x および layer.y サブオブジェクトは、軸のプロパティを修正するのに使うことができます。

アクティブレイヤのXスケールを修正するには

//スケールをLog10にセット
layer.x.type = 2;
//開始値をセット
layer.x.from = .001;
//終了値をセット
layer.x.to = 1000;
//増分値をセット
layer.x.inc = 2;

Yスケールを操作するには、上記スクリプトのxをyに変更するだけです。アクティブでないレイヤを操作するには場合、layerN.x.from.のようにレイヤインデックスを指定します。 サンプルは次の通りです。 layer3.y.from = 0;

Axis コマンドは、軸ダイアログの設定にアクセスするのに使います。

Book1のSheet1にあるcol(A)に対してcol(B)をcol(C)のテキスト付きでプロットし、 X軸ラベルを列Cの値に変更するには、 次のようにします。

range aa = [Book1]Sheet1!col(C);
axis -ps X T aa;

データプロットのプロパティ

Set (コマンド) は、データプロットの属性を変更するのに使います。次のサンプルは、同じデータプロットのプロパティを数回変更し、 Set コマンドがどのように動作するのかを示します。スクリプトでは、プロットスタイルを変更する前に、secコマンドを使って、1秒間停止します。

// いくつかデータを作成
newbook;
col(a) = {1:5};
col(b) = col(a);
// 散布図を作成
plotxy col(b);
 
// シンボルサイズをセット
// %C はアクティブデータセット
sec -p 1;
set %C -z 20;
// シンボルの形状をセット
sec -p 1;
set %C -k 3;
// シンボルの色をセット
sec -p 1;
set %C -c color(blue);
// シンボルを接続
sec -p 1;
set %C -l 1;
// グラフ線の色を変更
sec -p 1;
set %C -cl color(red);
// 線の太さを4ポイントにセット
sec -p 1;
set %C -w 2000;
// 実線を破線に変更
sec -p 1;
set %C -d 1;

2つのレイヤを持つテンプレート, DoubleY, にプロットし、2番目のレイヤのデータプロットのスタイルをセットする別のサンプルがあります。

// データをインポート
newbook;
string fn$=system.path.program$ + "Samples\Curve Fitting\Enzyme.dat"; 
impasc fname:=fn$;
//アクティブワークシート範囲を宣言
range rr = !;
//テンプレートにプロット
plotxy iy:=(1,2) plot:=200 ogl:=[<new template:=DoubleY>];
//アクティブグラフの2番目のレイヤにプロット、これは上記の折れ線から作成したグラフ
plotxy iy:=%(rr)(1,3) plot:=200 ogl:=2!;
//レイヤ2の最初のデータプロットの範囲を宣言
range r2 = 2!1;
//線を破線にセット
set r2 -d 1;

凡例とラベル

凡例とラベルのフォーマットについては、グラフィックオブジェクトの作成とアクセス をご覧下さい。