我正在尝试缩放我的决策树以适合笔记本,但它似乎无法正确缩放。我必须继续滚动以获得更好的 View 。我可以请您帮忙解决这个问题吗?附件是它的外观图片。
from graphviz import Source
from sklearn import tree
from IPython.display import SVG
graph = Source( tree.export_graphviz(dt_classifier, out_file=None, feature_names=X.columns))
SVG(graph.pipe(format='svg'))
最佳答案
也许它不再相关了,因为这个问题已经开放了大约六个月。然而,我只是偶然发现了它,显然就像其他 83 位读者一样,我只是想出了自己的方法来解决这个问题。最简单的方法是使用 pydot 包(pip install pydot
),然后添加默认大小。我还一直在使用 %matplotlib inline ,以便它在笔记本中很好地显示,但不使用 svg 模块。以你的例子:
%matplotlib inline
from graphviz import Source
from sklearn import tree
import pydot
dot_data = tree.export_graphviz(dt_classifier, out_file=None, feature_names=X.columns))
pdot = pydot.graph_from_dot_data(dot_data)
# Access element [0] because graph_from_dot_data actually returns a list of DOT elements.
pdot[0].set_graph_defaults(size = "\"15,15\"")
graph = Source(pdot[0].to_string())
graph
我还在export_graphviz
中添加了rotate=True
,使其以水平样式显示,树的根部直接可见,并且更容易跟踪。当然,您可以尝试调整size
,以达到您可以接受的程度。
关于pandas - 尝试在我的笔记本中查看决策树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49766875/