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, fontname='helvetica')[source]#

以 DOT 格式导出决策树。

此函数生成决策树的 GraphViz 表示,然后将其写入 out_file。导出后,可以使用例如以下方式生成图形渲染

$ dot -Tps tree.dot -o tree.ps      (PostScript format)
$ dot -Tpng tree.dot -o tree.png    (PNG format)

显示的样本计数会根据可能存在的任何 sample_weights 进行加权。

更多信息请参阅 用户指南

参数:
decision_treeobject

要导出到 GraphViz 的决策树估计器。

out_fileobject or str, default=None

输出文件的句柄或名称。如果为 None,则结果将作为字符串返回。

版本 0.20 中已更改: out_file 的默认值从 “tree.dot” 更改为 None。

max_depthint, default=None

表示的最大深度。如果为 None,则完全生成树。

feature_namesarray-like of shape (n_features,), default=None

包含特征名称的数组。如果为 None,将使用通用名称(“x[0]”、“x[1]”等)。

class_namesarray-like of shape (n_classes,) or bool, default=None

每个目标类按升序排列的名称。仅与分类相关,不支持多输出。如果为 True,则显示类名的符号表示。

label{‘all’, ‘root’, ‘none’}, default=’all’

是否显示关于不纯度等的描述性标签。选项包括 ‘all’(在每个节点显示)、‘root’(仅在顶部根节点显示)或 ‘none’(不在任何节点显示)。

filledbool, default=False

设置为 True 时,绘制节点以指示分类的多数类、回归的值极端性或多输出的节点纯度。

leaves_parallelbool, default=False

设置为 True 时,将所有叶节点绘制在树的底部。

impuritybool, default=True

设置为 True 时,在每个节点显示不纯度。

node_idsbool, default=False

设置为 True 时,在每个节点上显示 ID 号。

proportionbool, default=False

设置为 True 时,将“values”和/或“samples”的显示分别更改为比例和百分比。

rotatebool, default=False

设置为 True 时,将树的方向从上到下改为从左到右。

roundedbool, default=False

设置为 True 时,绘制带有圆角的节点框。

special_charactersbool, default=False

设置为 False 时,忽略特殊字符以实现 PostScript 兼容性。

precisionint, default=3

每个节点的不纯度、阈值和值属性中的浮点数精度位数。

fontnamestr, default=’helvetica’

用于渲染文本的字体名称。

返回:
dot_datastr

GraphViz dot 格式的输入树的字符串表示。仅当 out_file 为 None 时返回。

版本 0.18 新增。

示例

>>> 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 {...