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
]
}
【実行結果】

例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;
}