FAQ-633 2点間を結んだ線を引き、傾きとy切片を求めるには?

最終更新日:2015/02/04

このLabTalkスクリプトは2つのデータポイントをグラフィカルに選択できます。2点選択すると、間に線が引かれ、傾きとy切片の値がグラフ上のテキストラベルに表示されます。

def EndToolbox {
   %A=getpts.xdata$;
   %B=getpts.data$;
   slope=(%B(%A[2])-%B(%A[1]))/(%A[2]-%A[1]);
   yintercept=%B(%A[2])-slope*%A[2];
   %Z="slope=$(slope)
yintercept=$(yintercept)";
   label -p 10 0 -s -sa -n Ltext %Z;
   Ltext.background=1;
   xb1=%A[1];xb2=%A[2];yb1=%B(%A[1]);yb2=%B(%A[2]);
   draw -n Lline -l {xb1,yb1,xb2,yb2};  
   Lline.color=2;  // 色を赤に設定
   delete -v xb1;delete -v xb2;delete -v yb1;delete -v yb2;
   delete -v slope;delete -v yintercept;
   doc -uw;  // ウィンドウリフレッシュ
}
getpts 2; // 2点選択のためにデータリーダを使用

このスクリプトはスクリプトウィンドウで実行するか、OGSファイルを置いてツールバーボタンに結び付けます。

Note:このスクリプトは、データセットを関数として使用し、与えられたX値に対応するY値を検索します。複数のX値がある場合、最初に検索されたX値に対応するY値が返されます。

キーワード:LabTalk, 線形フィット