www.cl.ecei.tohoku.ac.jpをやっていてpydotを使う必要があったのでインストールしたけどうまく動いてくれなかった.いじってたら動作するようになったのでそれのメモ
他の環境ではどうなるかわかりません
Pythonのバージョン
Python 3.4.1 :: Anaconda 2.1.0 (x86_64)
インストール(python3系ではpydot3らしい)
pip install pydot3
import pydot edges=[('root', '日本語'), ('root', 'Latin'), ('root' , 'English'), ('Latin', 'English')] g = pydot.graph_from_edges(edges) g.write_jpeg('graph_from_edges_dot.jpg', prog='dot')
まず最初に出るエラーはこれ
AttributeError: 'module' object has no attribute 'graph_from_edges'
import pydot
を# import pydot.pydot as pydot
に書き換えるとこのエラーは消える
次に出るエラーはこれ
Couldn't import dot_parser, loading of dot files will not be possible.
site-packages/pydot/pydot.py
の32行目のException の中身をprintしてみるとcannot import name 'pydot'
らしい
site-packages/pydot/dot_parser.py
の from . import pydot
を import pydot
に書き換えるとこのエラーは消える
これでもまだ動作しなくてcannot import name 'Upcase'
と言われる
Resolved #1 by jthomas8 · Pull Request #2 · log0/pydot3 · GitHub を参考にUpcase
をupcaseTokens
に書き換える
これで動作するようになる
site-packages/pydot/dot_parser.py
の方は from . import dot_parser
のままでエラー吐かないのよくわからない
あとこのエラーの原因はpydot3の__init__.pyに何も書かれていないからだと思うけど,pythonのmoduleについて詳しくないから落ち着いたら勉強してそっち方向での解決策を探したい