1. ホーム
  2. python

[解決済み] pydotとgraphvizのエラーです。dot_parserをインポートできないため、ドットファイルの読み込みができません。

2022-02-14 17:44:22

質問

非常にシンプルなコードをpydotで実行すると

import pydot
graph = pydot.Dot(graph_type='graph')

for i in range(3):

  edge = pydot.Edge("king", "lord%d" % i)
  graph.add_edge(edge)

vassal_num = 0
for i in range(3):
  for j in range(2):
    edge = pydot.Edge("lord%d" % i, "vassal%d" % vassal_num)
    graph.add_edge(edge)
    vassal_num += 1

graph.write_png('example1_graph.png')

エラーメッセージが表示されます。

Couldn't import dot_parser, loading of dot files will not be possible.

Python 2.7.3を使っています。

どのように解決するのですか?

の回答 pydot >= 1.1 :

の非互換性(上流) pydot が修正されました。 6dff94b3f1 であり、そのため pydot >= 1.1 は次のようになります。 との互換性があります。 pyparsing >= 1.5.7 .


該当する回答 pydot <= 1.0.28 :

この現象に遭遇した人のために説明すると、pyparsingの1.xから2.xのリリースへの変更に起因しています。 pipを使用してpydotをインストールするには、まず古いバージョンのpyparsingをインストールしてください。

pip install pyparsing==1.5.7
pip install pydot==1.0.28

をインストールしていない場合は pyparsing を使って pip が、代わりに setup.py では、これを見てください。 解決策 をクリックして、パッケージをアンインストールしてください。ありがとうございます。