2010年2月27日土曜日

PythonでOpenBabelを使う

TIBCO Spotfire3.1が欧米でリリースされ、日本国内でも近々リリースされると思います。

今回のリリースでの目玉はTextView上でのスクリプトの実行が可能になり、ガイドっぽいことができるようになるのとHeatMapのサポート、Bar&LineChartなどいろいろありますが(詳細)、地味ですがIronPythonのScriptのサポートがあります。

これを機にちょっとPythonを勉強しておこうと思って、環境を作ります。詳細はこちら

  1. Python2.6をインストール http://www.python.org/download/
    • 最新版は3.1なのですがOpenBabelで構造表示に使うPILとOASAが2.6までしか対応していないので。
  2. Pythonのパスを設定
  3. OpenBabel GUIをインストール
  4. OpenBabelのパスを通す
    1. PATHにI:\Program Files\OpenBabel-2.2.3を追加
  5. 環境変数「BABEL_DATADIR」をセット
    1. 例えば、set BABEL_DATADIR=I:\Program Files\OpenBabel-2.2.3な感じ
  6. OpenBabel Python bindingsをインストール
    1. PILとOASAをインストール、いずれもPython2.6用を入れます
    2. OpenBabelのWebにあるテストスクリプトを動かしてみる
    テストスクリプトのうち「mol.make3D()」を実行してみて、
    ==============================
    *** Open Babel Error  in OpenBabel::OBForceFieldMMFF94::ParseParamFile
      Cannot open parameter file
    こんなエラーが出る場合は、環境変数のBABEL_DATADIRが正しくセットされていない時です。コマンドプロンプトでecho %BABEL_DATADIR%とやってみてOpenBabelのGUIのインストールフォルダーが出ることを確認しましょう。

    2 件のコメント:

    kzfm さんのコメント...

    ironpythonは.NETで動くPythonなのでdllとか直接呼べるのではないでしょうか?

    hkir さんのコメント...

    私はまだ普通のPythonで遊んでるからまだironっぽいような.NETとつなげて書いていません。

    なんか面白そうなことができればいいんだけど。