决策树的可视化

1. 首先安装 graphviz 并设置环境变量, 很多文章都写这个教程了, 这里就不写了

2. 安装 python-graphviz

conda  install python-graph-viz

3. 生成图片文件

import graphviz
from sklearn.tree import DecisionTreeClassifier,export_graphviz
from sklearn.datasets import load_iris

iris = load_iris()
X,y = iris.data,iris.target
tree = DecisionTreeClassifier(max_depth=3)
tree.fit(X,y)

# out_file不为None, 就不会返回值, 而是会创建out_file指定的文本文件
export_graphviz(tree,out_file="iris",feature_names=iris.feature_names,class_names=iris.target_names,filled=True,rounded=True)
# 此时可以在命令行窗口执行命令行执行, 生成需要的格式文件
# dot -Tpng iris -o tree.png 命令生成png图片, 其中iris是指定刚才生成的文件名, tree.png是指生成的图片名称
# dot -Tps iris -o tree.ps 可以生成ps文件, 运行又可以生成pdf文件

即可看到该文件

4. 在jupyter中显示

tree = DecisionTreeClassifier(max_depth=2, splitter='random')
tree.fit(X,y)

# out_file赋值为None, 就会返回值(字符串), 而不是创建文本文件
# feature_names: 特征名称, 图框中第一行的特征名称, 如果没有就是X[0], X[1],...
# class_names: 类别名称, 图框中最后一行的信息, 如果没有就没有这一行
# filled: 图框内部是不是有颜色的, 越纯颜色越重, 越混乱颜色越浅
# rounded: 是不是有圆倒角

dot_data = export_graphviz(tree, out_file=None, feature_names=iris.feature_names, class_names=iris.target_names, filled=True, rounded=True)
# print(type(dot_data)) # <class 'str'>
# print(dot_data)
graph = graphviz.Source(dot_data)
# graph.render(iris)  # 会生成含有决策树的pdf文件
# print(type(graph))
graph

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值