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')[源代码]#

以DOT格式输出决策树。

该函数生成决策树的GraphViz表示,然后将其写入 out_file .输出后,可以使用例如::

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

显示的样本计数使用可能存在的任何sample_weights进行加权。

阅读更多的 User Guide .

参数:
decision_tree对象

将输出到GraphViz的决策树估计器。

out_file对象或字符串,默认=无

输出文件的手柄或名称。如果 None ,结果以字符串形式返回。

在 0.20 版本发生变更: out_file的默认值从“tree.dot”更改为无。

max_depthint,默认=无

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

feature_names形状类似阵列(n_features,),默认=无

包含要素名称的数组。如果无,将使用通用名称(“x [0] ”,”x [1] ", ...).

class_names形状(n_classes,)或布尔的类数组,默认=无

每个目标类的名称(按数字递减顺序排列)。仅与分类相关,不支持多输出。如果 True ,显示了类名称的符号表示。

label' all ',' root ',',默认=' all '

是否显示杂质等的信息标签。选项包括在每个节点显示的“all”,仅在顶部根节点显示的“root”,或不在任何节点显示的“none”。

filled布尔,默认=假

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

leaves_parallel布尔,默认=假

如果设置为 True ,绘制树底部的所有叶节点。

impurity布尔,默认=True

如果设置为 True ,显示每个节点处的杂质。

node_ids布尔,默认=假

如果设置为 True ,显示每个节点上的ID号。

proportion布尔,默认=假

如果设置为 True ,将“值”和/或“样本”的显示分别更改为比例和百分比。

rotate布尔,默认=假

如果设置为 True ,将树从左向右而不是自上而下。

rounded布尔,默认=假

如果设置为 True ,绘制圆角的节点框。

special_characters布尔,默认=假

如果设置为 False ,为了收件箱兼容性,忽略特殊字符。

precisionint,默认=3

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

fontname字符串,默认=' helvetica '

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

返回:
dot_datastr

以GraphViz点格式表示输入树的字符串。只有在以下情况下才返回 out_file 没有。

Added in version 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 {...