マクロの組み方Part11(Cursorを用いる その1)
まずはWaveを作成しましょう。
Make/O Ref_x,Ref_y,Target
Ref_x=2*x-13
Ref_y=x
Target=x
Display Ref_y vs Ref_x
Ref_x=2*x-13
Ref_y=x
Target=x
Display Ref_y vs Ref_x
このときの横軸の情報を、Targetに付け加えましょう。
カーソルを使う その1
Macro CursorMacro()
String Refx_str="Ref_x"
String Refy_str="Ref_y"
String Target_str="Target"
Display $Refy_str vs $Refx_str
//ここまで準備
Variable Ref_0,Ref_1 //Ref_0が0Point目におけるxの値
Cursor A $Refy_str 0 //0ポイント目にCursorAを置く
Ref_0=hcsr(A) //Ref_0にCursorAのxの値を代入
Cursor A $Refy_str 1 //1ポイント目にCursorAを置く
Ref_1=hcsr(A) //Ref_1にCursorAのxの値を代入
Setscale/p x,Ref_0,Ref_1-Ref_0,$Target_str //Tartgetのx軸情報を入力
End
String Refx_str="Ref_x"
String Refy_str="Ref_y"
String Target_str="Target"
Display $Refy_str vs $Refx_str
//ここまで準備
Variable Ref_0,Ref_1 //Ref_0が0Point目におけるxの値
Cursor A $Refy_str 0 //0ポイント目にCursorAを置く
Ref_0=hcsr(A) //Ref_0にCursorAのxの値を代入
Cursor A $Refy_str 1 //1ポイント目にCursorAを置く
Ref_1=hcsr(A) //Ref_1にCursorAのxの値を代入
Setscale/p x,Ref_0,Ref_1-Ref_0,$Target_str //Tartgetのx軸情報を入力
End
Cursor カーソルの種類 トレースの名前 何ポイント目にカーソルを置くか
hcsr(A)・・・カーソルAにおけるxの値
xcsr(A)・・・カーソルAにおけるxの値
(これらの違いについては次記事マクロの組み方Part12(Cursorを用いる2) - Igorの解説とかで)
pcsr(A)・・・カーソルAにおけるxのポイント数
vcsr(A)・・・カーソルAにおけるyの値
qcsr(A)・・・カーソルAにおけるyの値
zcsr(A)・・・等高線プロットやイメージプロットの時のカーソルAにおけるzの値
xcsr(A)・・・カーソルAにおけるxの値
(これらの違いについては次記事マクロの組み方Part12(Cursorを用いる2) - Igorの解説とかで)
pcsr(A)・・・カーソルAにおけるxのポイント数
vcsr(A)・・・カーソルAにおけるyの値
qcsr(A)・・・カーソルAにおけるyの値
zcsr(A)・・・等高線プロットやイメージプロットの時のカーソルAにおけるzの値
Setscale/p 軸(x or y),0Point目の値,Pointの間隔,Wave名
Setscale 軸(x or y),0Point目の値,最終Pointの値,Wave名
Setscale 軸(x or y),0Point目の値,最終Pointの値,Wave名