天天看點

讀書筆記(4) |決策樹繪制函數介紹

1

基本思想

第二期推文中我們巳經介紹了如何從資料集中建立樹,我們是用字典類型來存儲決策樹的,然而字典的表示形式非常不易于了解,決策樹的主要優點就是直覺易于了解,如果不能将其直覺地顯示出來,就無法發揮其優勢。鑒于Python 并沒有提供繪制樹的工具,本期我們将介紹使用Matplotlib庫來建立樹形圖。Matplotlib庫是Python優秀的資料可視化第三方庫,下面我們通過具體的算法實作來感受Matplotlib庫的繪圖魅力。

2

算法實作

1.擷取決策樹的葉節點數和樹的層數

為保證繪制的決策樹具有美觀的比例和位置,我們必須要知道葉節點數和樹的層數,以便正确确定x軸與y軸的長度。

【求葉子節點數】

讀書筆記(4) |決策樹繪制函數介紹

【求樹的層數】

讀書筆記(4) |決策樹繪制函數介紹

【列印結果】

讀書筆記(4) |決策樹繪制函數介紹

運作結果(python3):

讀書筆記(4) |決策樹繪制函數介紹

2.圖示決策樹

讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹

函數說明 —— annotate

可以在資料圖形上添加文本注釋,内嵌支援帶箭頭的劃線工具,使得可以在其他恰當的地方指向待注釋内容。

annotate參數說明:

①xy箭頭尖端坐标,即待注釋的位置坐标

②xytext注釋位置的坐标

③xycoords被注釋點的坐标系屬性,參數如下

figure points—— 以繪圖區左下角為參考,機關是點數

figure pixels—— 以繪圖區左下角為參考,機關是像素數

figure fraction—— 以繪圖區左下角為參考,機關是百分比

axes points —— 以子繪圖區左下角為參考,機關是點數(一個figure可以有多個axex,預設為1個)

axes pixels—— 以子繪圖區左下角為參考,機關是像素數

axes fraction ——以子繪圖區左下角為參考,機關是百分比

data ——以被注釋的坐标點xy為參考 (預設值)

polar——不使用本地資料坐标系,使用極坐标系

④extcoords注釋文本的坐标系屬性,預設與xycoords屬性值相同,也可設為不同的值。除了允許輸入xycoords的屬性值,還允許輸入以下兩種:

offset points 相對于被注釋點xy的偏移量(機關是點)

offset pixels  相對于被注釋點xy的偏移量(機關是像素)

⑤arrowprops 箭頭參數,參數類型為字典dict

width ——點箭頭的寬度

headwidth——箭頭底座的寬度

headlength—— 點箭頭的長度

shrink——箭頭總長度從兩端收縮的百分比

facecolor ——箭頭顔色

⑥bbox給标題增加外框 ,常用參數如下:

boxstyle方框外形

facecolor(簡寫fc)背景顔色

edgecolor(簡寫ec)邊框線條顔色

edgewidth邊框線條大小

讀書筆記(4) |決策樹繪制函數介紹

函數說明 —— text

讀書筆記(4) |決策樹繪制函數介紹

text文法: text(x,y,string,fontsize=15,verticalalignment="top",horizontalalignment="right")

①x,y:表示坐标點

②string:表示注釋文字

③fontsize:表示字型大小

④verticalalignment:垂直對齊方式 

參數:[ ‘center’ | ‘top’ | ‘bottom’ | ‘baseline’ ]

⑤horizontalalignment:水準對齊方式 

參數:[ ‘center’ | ‘right’ | ‘left’ ]

  boxstyle方框外形

  facecolor(簡寫fc)背景顔色

  edgecolor(簡寫ec)邊框線條顔色

  edgewidth邊框線條大小

讀書筆記(4) |決策樹繪制函數介紹

函數說明 —— plot

讀書筆記(4) |決策樹繪制函數介紹

plot文法:

plot(x, y, color='green', marker='o', linestyle='dashed',linewidth=2, markersize=12)

①    color:繪圖顔色

②    marker:繪圖符号

③    linestyle:線型

④    linewidth:線寬

⑤    markersize:繪圖符号大小

讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹
讀書筆記(4) |決策樹繪制函數介紹