决策树可视化-graphviz安装

简介: 决策树可视化-graphviz安装

我们以iris为例:

from sklearn import tree
from sklearn.datasets import load_iris
iris = load_iris()
clf = tree.DecisionTreeClassifier()

生成如下决策树:

第一步:去官网下载graphviz

建议安装到 自己的anaconda下的  \Lib\site-packages\  里面去

下载连接:Download | Graphviz

第二步:改名字

比如我刚刚安装到了自己的anaconda下的  \Lib\site-packages\ 里面,文件名默认是大写的Graphviz,为了方便,我们改为graphviz。

第三步:配置环境变量

在系统、用户环境变量中添加路径:C:\Anaconda01\Lib\site-packages\graphviz\bin

当然如果你在安装时把那个添加环境变量打勾了就不用管了。

第四步:在对应的python环境下下载graphviz

pip install graphviz

此时,C:\Anaconda01\Lib\site-packages\graphviz 这个文件发生变化了,里面多了些python文件

第五步:简单演示

以一组英雄联盟胜负数据为例:连接这里有

from sklearn import tree
from graphviz import sources
DT = tree.DecisionTreeClassifier(criterion='entropy',max_depth=4,min_samples_split=500)
DT = DT.fit(x_train,y_train)
# export_graphviz 还支持各种美化,包括通过他们的类着色节点(或回归值),
# 如果需要,还能使用显式变量和类名。Jupyter notebook也可以自动内联式渲染这些绘制节点:
dot_data = tree.export_graphviz(DT, out_file=None, feature_names=feature_names, class_names=['lose','win'], filled=True, rounded=True, special_characters=True)  
graph = sources.Source(dot_data)  
graph.render("DT") # 保存成pdf
graph

可以看到,左边蓝色方都输了,右边都赢了,中间有输有赢。

此外 graphviz 还有多种用法,可以自己设置节点等,感兴趣的可以自己进行查阅。

相关文章
|
机器学习/深度学习 数据可视化 算法
|
11月前
|
SQL 存储 关系型数据库
如何巧用索引优化SQL语句性能?
本文从索引角度探讨了如何优化MySQL中的SQL语句性能。首先介绍了如何通过查看执行时间和执行计划定位慢SQL,并详细解析了EXPLAIN命令的各个字段含义。接着讲解了索引优化的关键点,包括聚簇索引、索引覆盖、联合索引及最左前缀原则等。最后,通过具体示例展示了索引如何提升查询速度,并提供了三层B+树的存储容量计算方法。通过这些技巧,可以帮助开发者有效提升数据库查询效率。
987 2
SSLError(MaxRetryError(‘HTTPSConnectionPool(host=\‘repo.anaconda.com\‘, port
SSLError(MaxRetryError(‘HTTPSConnectionPool(host=\‘repo.anaconda.com\‘, port
1296 0
|
自然语言处理 数据可视化 搜索推荐
用Python制作酷炫词云图,原来这么简单!
用Python制作酷炫词云图,原来这么简单!
1561 1
|
11月前
|
Linux Android开发 开发者
【Python】GUI:Kivy库环境安装与示例
这篇文章介绍了 Kivy 库的安装与使用示例。Kivy 是一个开源的 Python 库,支持多平台开发,适用于多点触控应用。文章详细说明了 Kivy 的主要特点、环境安装方法,并提供了两个示例:一个简单的 Hello World 应用和一个 BMI 计算器界面。
418 0
|
12月前
|
Linux Android开发 iOS开发
使用Kivy创建“Hello World”应用并打包成APK
使用Kivy创建“Hello World”应用并打包成APK
|
C语言 Perl
西门子S7-1200编程实例,电动机起保停控制梯形图如何编写?
本篇我们通过一个电动机起保停控制的实例,介绍S7-1200的使用方法,按下瞬时启动按钮I0.6,电动机Q0.0启动,按下瞬时停止按钮I0.7,电动机Q0.0停止。
西门子S7-1200编程实例,电动机起保停控制梯形图如何编写?
|
机器学习/深度学习 算法 Python
【算法】深入浅出爬山算法:原理、实现与应用
【算法】深入浅出爬山算法:原理、实现与应用
541 3
|
机器学习/深度学习 算法 数据挖掘
基于凹凸性PCL—低层次视觉
基于凹凸性PCL—低层次视觉
155 0
|
JSON Linux Shell
vscode c++ 使用问题汇总
vscode c++ 使用问题汇总
373 0