1-1 係数の変更

例1:x^2 + b*x のグラフ

係数 b を -4 から 4 まで、2 ずつ増やして 5 本の2次曲線を作成します。

:for b, -4, 4, 2
{
	:draw2DGraphFunc x, AUTO, AUTO, 1001
	[
		X = x
		Y = x^2 + b*x
	]
}

【実行結果】

Graph

例2:x^2 + b*x の極小値

係数 b を -4 から 4 まで、2 ずつ増やして 5 本の2次曲線の極小値を求めます。

:for b, -4, 4, 2
{
	:getValMinimize x
	[
		x^2 + b*x
	]
}

【実行結果】

!  b=-4; 
>  x = 2
>  -4
!  b=-2; 
>  x = 1
>  -1
!  b=0; 
>  x = 0
>  0
!  b=2; 
>  x = -1
>  -1
!  b=4; 
>  x = -2
>  -4

2-1 複数ファイルの処理

例1:特定カラムの集計

カレントフォルダにある全ての CSV ファイルに対して、第2カラムの2行目からの合計を集計して "total.csv" というファイルに保存します。

t.total = t.0;
t.total:=add_col["合計"];

:foreach $file, ::glob "*.csv"
{
	:readData $file;
	t.total{合計}[$file] = ::sum V[1][1];
	
	# メモリ消費が気にならなければ、この2行は不要です。
	:setDataSheetDel S[@s];
	:setDataUndoClear;
}

:setDataNew;
T[0][0] = t.total;
:saveData "total.csv";

例2:各カラムの加算

カレントフォルダにあるファイル名が 'b' から始まる全ての CSV ファイルに対して、2行目から全ての行で第1カラムと第2カラムを加算して第4カラムに書込み、ファイル名に "_a" を加えて保存します。

:foreach $file, ::glob "b*.csv"
{
	:readData $file;
	
	$D[3][0] = "合計";
	:for i, 1, ::row_size 0 - 1
	{
		D[3][i] = D[0][i] + D[1][i];
	}
	
	:saveData ::insert[$file, -4, "_a"];
	
	# メモリ消費が気にならなければ、この2行は不要です。
	:setDataSheetDel S[@s];
	:setDataUndoClear;
}

3-1 分類してプロット

例1:特定列の条件によってデータをプロット

第0列を x、第1列を y として、データウィンドウの第2列の値によって複数のプロットを作成します 。

:for a, 0, 10, 2, ASN
{
	:draw2DGraph  x, y, i, 1, ::row_size 0, 1, ASN
	{
		:if^ a <= D[2][i] && D[2][i] < a+2
		{
			:continue;
		}
		
		x = D[0][i];
		y = D[1][i];
	}

	:set2DPlotLineWidth G[@g][@p], 0;
	:set2DPlotMarkerSize G[@g][@p], 2;
}