1

我正在尝试使用and库中的Phylo.draw_graphviz方法创建系统发育树。我阅读了文档并安装了,以及windows。然后我从Unofficial Windows Binaries for Python Extension Packages安装。我遵循了Biopython wiki中给出的以下代码:BioPythonPyGraphviznetworkxmatplotlibGraphviz 2.38PyGraphviz

from Bio import Phylo
import pylab

tree = Phylo.read('allseqs.dnd', 'newick')
Phylo.draw_graphviz(tree)
pylab.show()

但是我一直遇到这个错误:

Traceback (most recent call last):
  File "C:\Users\GAMER\Desktop\Methybase\Data\Helicobacter  pylori  F16\graphtezt.py", line 5, in <module>
    Phylo.draw_graphviz(tree)
  File "c:\users\gamer\desktop\padai\coding\user\lib\site-packages\Bio\Phylo\_utils.py", line 155, in draw_graphviz
    raise MissingPythonDependencyError(
UnboundLocalError: local variable 'MissingPythonDependencyError' referenced before assignment

源代码可在此处获得。我155按照回溯的建议检查了行,这就是它所说的:

raise MissingPythonDependencyError( 
                 "Install PyGraphviz or pydot if you want to use draw_graphviz.")

任何解决方案将不胜感激

4

1 回答 1

0

从该链接上的代码看来,缺少关键行。这应该是from Bio import MissingPythonDependencyError并且应该在第 154 行和第 155 行之间缩进显示。问题是该函数在调用之前没有被导入,因为如果模块 networkx 丢失,它只会在第 134 行被导入。

于 2014-10-15T20:23:13.837 回答