sklearn.tree.export_graphviz¶
sklearn.tree.export_graphviz(decision_tree, out_file=None, *, max_depth=None, feature_names=None, class_names=None, label='all', filled=False, leaves_parallel=False, impurity=True, node_ids=False, proportion=False, rotate=False, rounded=False, special_characters=False, precision=3)
[源码]
以DOT格式导出决策树模型。
该函数生成决策树的可视化表示,然后将其写入指定的输出文件out_file中。 导出后,可以使用以下方式生成图形渲染:
$ dot -Tps tree.dot -o tree.ps (PostScript format)
$ dot -Tpng tree.dot -o tree.png (PNG format)
显示的样本计数将使用可能存在的任何sample_weights加权。
想了解更多请参阅 用户指南.
参数 | 说明 |
---|---|
decision_tree | decision tree classifier 用来做可视化的决策树模型 |
out_file | file object or string, optional (default=None) 输出文件的句柄或名称。 如果为None,则结果以字符串形式返回 在0.20版本中更新: out_file 的默认值从"tree.dot"更改为None 。 |
max_depth | int, optional (default=None) 描绘的最大深度。如果为None,则这树完全生长。 |
feature_names | list of strings, optional (default=None) 每个特征的名字 |
class_names | list of strings, bool or None, optional (default=None) 每个目标类别的名称、按升序排列。 仅与分类相关,不支持多输出。 如果为True,则显示类名称的符号表示。 |
label | {‘all’, ‘root’, ‘none’}, optional (default=’all’) 是否显示不纯度的信息性标签等。选项包括“ all”显示在每个节点上,“ root”显示在顶部根节点上,“ none”显示在任何节点上。 |
filled | bool, optional (default=False) 设置为True时,绘制节点以表示多数类用于分类问题,值的极值用于回归问题,或表示节点的纯度用于多输出问题。 |
leaves_parallel | bool, optional (default=False) 设置为True时,在树的底部绘制所有叶节点。 |
impurity | bool, optional (default=True) 设置为True时,显示每个节点上的不纯度。 |
node_ids | bool, optional (default=False) 设置为True时,显示每个节点上的ID号。 |
proportion | bool, optional (default=False) 设置为True时,将“值”和/或“样本”的显示分别更改为比例和百分比。 |
rotate | bool, optional (default=False) 设置为True时,将树从左到右而不是自上而下定向。 |
rounded | bool, optional (default=False) 设置为True时,绘制带有圆角的节点框,并使用 Helvetica 字体代替Times-Roman 。 |
special_characters | bool, optional (default=False) 设置为False时,请忽略特殊字符以实现PostScript兼容性。 |
precision | int, optional (default=3) 每个节点的杂质值,阈值和值属性中浮点数的精度位数。 |
返回值 | 说明 |
---|---|
dot_data | string 树模型 GraphViz dot 格式的字符串表现形式。仅仅在 out_file 为None时返回。 |
示例
>>> from sklearn.datasets import load_iris
>>> from sklearn import tree
>>> clf = tree.DecisionTreeClassifier()
>>> iris = load_iris()
>>> clf = clf.fit(iris.data, iris.target)
>>> tree.export_graphviz(clf)
'digraph Tree {...