天天看點

Python + Graphviz 可視化 決策樹

文章目錄

    • 1. 環境
    • 2. 安裝Graphviz
      • 2.1 安裝軟體
      • 2.2 安裝庫
      • 2.3 最重要的一步!!!
    • 3. 運作代碼,進行可視化

1. 環境

  1. 純python,3.6.8
  2. Windows10 x64系統

2. 安裝Graphviz

2.1 安裝軟體

進入官方網站下載下傳http://www.graphviz.org/download/,找到windows穩定版本的安裝包

Python + Graphviz 可視化 決策樹

點進去後一路選擇,我選擇的是cmake的Release 2.44.1版本

Python + Graphviz 可視化 決策樹

安裝的時候,記得選中将安裝路徑添加到path中。

Python + Graphviz 可視化 決策樹

打開cmd,運作

dot -v

,如果顯示版本則說明安裝成功。

Python + Graphviz 可視化 決策樹

2.2 安裝庫

參考https://www.mlln.cn/2018/09/25/python-graphviz%E5%9B%BE%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96%E5%85%A5%E9%97%A8/#undefined

graphviz為Graphviz圖形繪制軟體提供了一個簡單的純Python接口。要使用pip安裝它,請運作以下指令:

pip install graphviz
           

2.3 最重要的一步!!!

參考https://blog.csdn.net/qq_42479987/article/details/109403618

在指令行輸入

dot -c
           

在指令行再輸入

dot -v
           

如果出現以下字段,則說明能夠使用Graphviz進行可視化了。

Python + Graphviz 可視化 決策樹

3. 運作代碼,進行可視化

參考https://sklearn.apachecn.org/docs/master/11.html

這裡就是将文檔中的代碼一行行粘貼了過來,完整代碼如下

>>> from sklearn import tree
>>> X = [[0, 0], [1, 1]]
>>> Y = [0, 1]
>>> clf = tree.DecisionTreeClassifier()
>>> clf = clf.fit(X, Y)
>>> clf.predict([[2., 2.]])
>>> clf.predict_proba([[2., 2.]])
>>> from sklearn.datasets import load_iris
>>> from sklearn import tree
>>> iris = load_iris()
>>> clf = tree.DecisionTreeClassifier()
>>> clf = clf.fit(iris.data, iris.target)
>>> import graphviz
>>> dot_data = tree.export_graphviz(clf, out_file=None)
>>> graph = graphviz.Source(dot_data)
>>> graph.render("iris")
>>> dot_data = tree.export_graphviz(clf, out_file=None,
...                      feature_names=iris.feature_names,  
...                      class_names=iris.target_names,  
...                      filled=True, rounded=True,  
...                      special_characters=True)  
>>> graph = graphviz.Source(dot_data)  
>>> graph

           

如果按照上面一步步來的話,最終應該能夠順利出圖。

Python + Graphviz 可視化 決策樹