Igorの解説とか

このブログはWavemetrics社が開発および販売しているIgorについて解説するブログです。

マクロの組み方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

f:id:Igorpro:20170501234639p:plain

このときの横軸の情報を、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

 

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の値

 

Setscale/p 軸(x or y),0Point目の値,Pointの間隔,Wave名
Setscale 軸(x or y),0Point目の値,最終Pointの値,Wave名

 

 

目次 サイト目次 - Igorの解説とか

前  マクロの組み方Part10(データのを連続でロード) - Igorの解説とか

次  マクロの組み方Part12(Cursorを用いる2) - Igorの解説とか