ソフトウェア/Igor のバックアップの現在との差分(No.1)
更新- 追加された行はこの色です。
- 削除された行はこの色です。
[[公開メモ]] * Igor [#k3f1dcd4] #contents データ解析に Wave Metrics 社の Igor Pro を使っています。 * Igor とは [#k3f1dcd4] 測定したデータの解析に Wave Metrics 社の Igor Pro を頻繁に使っています。 なかなか癖のあるソフトですが、 Igor 上でプログラムを組むことでかなり複雑なデータ解析も自動化できていろいろ捗ります。 ここには使い回しの効きそうなコード例を上げていこうと思います。 * ファイル名操作用のユーティリティ関数 [#x15fe647] 公式のオンラインヘルプはこちらです。~ http://www.hulinks.co.jp/support/igor/programming/index.html ":" 区切りで渡されたファイルパスを操作する関数。 * 分野別記事へのリンク [#cb75dc8d] 同名の Delphi の関数を模したものです。 #ls2(,title) LANG:Igor // ファイル名を返す function/T ExtractFileName(filename) string filename return StringFromlist(ItemsInList(filename, ":")-1, filename, ":") end // ファイルパスを返す (末尾には : が付く) function/T ExtractFilePath(filename) string filename return filename[0,strlen(filename)-strlen(ExtractFileName(filename))-1] end // filename の . 以降を取り除いたものに ext を付ける function/T ChangeFileExt(filename, ext) string filename, ext variable i = strsearch(filename, ".", inf, 3) if(i<0) return filename + ext else return filename[0,i-1] + ext endif end * ヒストグラムの罠 [#xb711407] 使用例 Igor の Histogram は癖があるので、正しく使わないとおかしな結果を導いてしまいます。 LANG:Igor print ExtractFileName("c:folder1:folder2:file.ext") // prints "file.ext" print ExtractFilePath("c:folder1:folder2:file.ext") // prints "c:folder1:folder2:" print ExtractFilePath("c:folder1:folder2:file.ext") + "newfile.ext" // prints "c:folder1:folder2:newfile.ext" print ChangeFileExt("c:folder1:folder2:file.ext", ".txt") // prints "c:folder1:folder2:file.txt" print ChangeFileExt("c:folder1:folder2:file.ext", "") // prints "c:folder1:folder2:file" 詳しくは、[[棒グラフの罠 - Histogram との組み合わせ>http://dora.bk.tsukuba.ac.jp/~takeuchi/index.php?%A5%BD%A5%D5%A5%C8%A5%A6%A5%A7%A5%A2%2FIgor%2F%A5%B0%A5%E9%A5%D5%B4%D8%CF%A2#e600b145]] をご覧下さい。 * 質問・コメント [#k629a3e3] #article_kcaptcha
Counter: 14238 (from 2010/06/03),
today: 1,
yesterday: 3