2015-02-07 1 views
2

Я пытаюсь использовать следующий код из sklearn (http://scikit-learn.org/stable/modules/tree.html):Pydot ошибка с решением sklearn графа дерева

from sklearn.externals.six import StringIO 
import pydot 
dot_data = StringIO() 
tree.export_graphviz(clf, out_file=dot_data) 
graph = pydot.graph_from_dot_data(dot_data.getvalue()) 
graph.write_pdf("iris.pdf") 

Я установил pydot==1.0.2 и когда я запускаю этот код, используя IPython ноутбук, он дает следующее сообщение об ошибке.

InvocationException      Traceback (most recent call last) 
<ipython-input-22-18c25f6a061c> in <module>() 
    4 tree.export_graphviz(clf, out_file=dot_data) 
    5 graph = pydot.graph_from_dot_data(dot_data.getvalue()) 
----> 6 graph.write_pdf("iris.pdf") 

/Users/aj/anaconda/lib/python2.7/site-packages/pydot.pyc in <lambda>(path, f,  prog) 
1600    self.__setattr__(
1601     'write_'+frmt, 
-> 1602     lambda path, f=frmt, prog=self.prog : self.write(path,   format=f, prog=prog)) 
1603 
1604    f = self.__dict__['write_'+frmt] 

/Users/aj/anaconda/lib/python2.7/site-packages/pydot.pyc in write(self, path, prog, format) 
1694    dot_fd.write(self.to_string()) 
1695   else: 
-> 1696    dot_fd.write(self.create(prog, format)) 
1697   dot_fd.close() 
1698 

/Users/aj/anaconda/lib/python2.7/site-packages/pydot.pyc in create(self, prog, format) 
1794    raise InvocationException(
1795     'Program terminated with status: %d. stderr follows: %s' % (
-> 1796      status, stderr_output)) 
    1797   elif stderr_output: 
    1798    print stderr_output 

InvocationException: Program terminated with status: 1. stderr follows: Format: "pdf" not recognized. Use one of 

Независимо от формата, в котором я изменил его, он дал ту же ошибку. Я запускаю это на Mac OS X Yosemite.

Любое предложение будет очень ценным.

ответ

0

Это, по сути, проблема графика. По-видимому, ему нужен пакет XQuartz (http://xquartz.macosforge.org/landing/), и после его установки все работало нормально.

+2

в моем случае установка XQuartz не изменил ошибку. XQuartz 2.7.7, OS Yosemite. [Здесь] (https://gist.github.com/srodriguex/f7833049784904805d44) список моих библиотек Python. – srodriguex

 Смежные вопросы

  • Нет связанных вопросов^_^