內容提要
《Python數據可視化之matplotlib實踐》使用大量的matplotlib 實用案例講解Python 數據可視化在各個套用方向上的實現方法。通過學習這些實用案例,讀者可以更好地掌握Python 數據可視化的高級技能。本書主要由圖形、元素、互動、探索和拓展5 部分組成,每部分的實用案例都有利於拓展matplotlib 的套用視野,而且案例中的示例代碼只涉及Python 的基礎知識。這樣,在Python 數據可視化的實踐中,有利於讀者將時間和精力放在系統掌握matplotlib 知識和技能上面,全面提高對matplotlib 的理解程度及套用水平。
目錄
第1 篇圖 形
第 1 章向幾何圖形里填充顏色 ............................................................................................... 2
1.1 多邊形的顏色填充 ............................................................................................................... 2
1.1.1 規則多邊形的顏色填充 ....................................................................................... 2
1.1.2 不規則多邊形的顏色填充 ........................................................................................ 4
1.2 交叉曲線的顏色填充 ........................................................................................................... 5
1.3 延伸閱讀 ............................................................................................................ 6
1.3.1 水平方向的交叉曲線的顏色填充方法 ....................................................................... 6
1.3.2 垂直方向的交叉曲線的顏色填充方法 .................................................................. 8
1.4 綜合案例:交叉間斷型曲線的顏色填充 ........................................................................... 9
第2 章使用模組patches 繪製幾何圖形 .............................................................................. 12
2.1 圓的實現方法 ..................................................................................................................... 12
2.2 橢圓的實現方法 ................................................................................................................. 15
2.3 矩形的實現方法 ................................................................................................................. 17
2.4 圓弧和楔形的繪製方法 ..................................................................................................... 19
2.5 延伸閱讀 ............................................................................................................................. 22
2.5.1 使用折線繪製圓 .................................................................................................. 22
2.5.2 使用橢圓繪製圓 ........................................................................................................... 25
2.5.3 使用楔形繪製餅圖 ................................................................................................ 26
2.5.4 使用楔形繪製圓環式餅圖 .................................................................................. 28
第3 章組合展示統計圖形 .................................................................................................... 31
3.1 機器學習中的判別分析示意圖 ......................................................................................... 31
3.2 日期型時間序列圖 ............................................................................................................. 33
3.3 向直方圖中添加機率密度曲線 ......................................................................................... 35
3.4 繪圖區域嵌套子繪圖區域 ................................................................................................. 39
3.5 延伸閱讀:設定一般化的日期刻度線 ............................................................................. 42
第2 篇元 素
第 4 章設定文本內容的樣式和布局 ...................................................................................... 45
4.1 文本註解的展示樣式 ......................................................................................................... 45
4.1.1 文本框的樣式 ..................................................................................................... 46
4.1.2 文本注釋箭頭的樣式 ...................................................................................................... 47
4.2 文本內容的布局 ................................................................................................................. 49
4.3 延伸閱讀 ............................................................................................................................. 54
4.3.1 文本自動換行 ...................................................................................................... 54
4.3.2 文本內容的旋轉角度 ............................................................................................. 57
4.3.3 文本內容的旋轉模式 .................................................................................................. 59
4.3.4 多行文本的對齊方式 .............................................................................................. 63
4.3.5 文本注釋箭頭的連線風格 ........................................................................................... 66
第5 章調整計量單位和計量方法 ......................................................................................... 76
5.1 不同計量單位的實現方法 ................................................................................................. 76
5.1.1 弧度和角度的實現方法 ................................................................................................. 76
5.1.2 厘米和英寸的實現方法 .............................................................................................. 78
5.1.3 秒、赫茲和分鐘的實現方法 ....................................................................................... 80
5.1.4 文本注釋位置的坐標系統的設定方法 ................................................................. 81
5.2 不同計量方法的操作原理 ................................................................................................. 83
第6 章調整刻度線和刻度標籤及軸脊的展示效果 ................................................................ 87
6.1 刻度線和刻度標籤及軸標籤的位置調整 ......................................................................... 87
6.2 刻度線的位置和數值的動態調整 ..................................................................................... 90
6.3 主要刻度線和次要刻度線的調整 ..................................................................................... 92
6.4 軸脊的顯示與隱藏 ............................................................................................................. 95
6.5 軸脊的位置調整 ................................................................................................................. 98
第 3 篇交 互
第 7 章實現圖形的動畫效果............................................................................................... 104
7.1 使用模組animation 繪製動畫 ......................................................................................... 104
7.2 調用模組pyplot 的API 繪製動畫 ................................................................................... 106
第8 章實現 GUI 效果 ........................................................................................................ 110
8.1 類RadioButtons 的使用方法 ............................................................................................110
8.2 類Cursor 的使用方法 .......................................................................................................113
8.3 類CheckButtons 的使用方法 ...........................................................................................114
第9 章實現事件處理效果 .................................................................................................. 118
9.1 單擊關閉畫布後出現事件結果提示 ................................................................................118
9.2 畫布局部放大效果的實現方法 ....................................................................................... 120
第 4 篇探 索
第 10 章從外部導入圖像載入到繪圖區域 .......................................................................... 124
10.1 外部圖像的多樣化展示 ................................................................................................. 124
10.2 地勢圖 ............................................................................................................................. 126
10.3 熱力圖 ............................................................................................................................. 127
10.4 設定圖片具有超連結功能 ............................................................................................. 131
10.5 添加畫布層面的外部圖像 ............................................................................................. 136
10.6 藉助濾鏡使得圖像產生多樣化的展示效果 ................................................................. 140
10.6.1 顏色的翻轉 ...................................................................................................... 145
10.6.2 RGB 通道NumPy 數組轉換成單通道NumPy 數組 ......................................... 146
第11 章繪製 3D 圖形......................................................................................................... 150
11.1 繪製帶顏色標尺的彩色曲面 ......................................................................................... 150
11.2 在3D 空間裡分層展示投射到指定平面後的2D 柱狀圖 ...................................... 152
11.3 在3D 空間裡繪製散點圖 .............................................................................................. 154
第12 章繪製地圖 ............................................................................................................... 156
12.1 澳大利亞的首都和首府城市的人口數量 ..................................................................... 156
12.2 當前時點的晝夜地理區域分布圖 ................................................................................. 160
12.3 城市之間相隔距離的可視化呈現 ................................................................................. 162
第13 章綜合交叉的套用場景............................................................................................. 167
13.1 輸入數據可以使用字元串代替變數 ............................................................................. 167
13.2 以PDF 檔案格式存儲畫布圖形 .................................................................................... 169
13.3 調用pyplot 的API 和面向對象的API 設定圖形屬性 .......................................... 171
13.4 用樹形圖展示資料夾中的檔案大小 ............................................................................. 172
13.5 matplotlib 風格集的設定方法 ........................................................................................ 176
13.6 matplotlib 後端類型的配置方法 .................................................................................... 181
第5 篇拓 展
第 14 章使用 LaTeX 和matplotlib 自帶的TeX 功能渲染文本內容 .......................... 187
14.1 準備步驟 ......................................................................................................................... 187
14.2 案例展示 ......................................................................................................................... 188
14.3 延伸閱讀 ......................................................................................................................... 190
第15 章使用 matplotlib 書寫數學表達式的方法和技巧...................................................... 193
15.1 編輯字元串的規則 ......................................................................................................... 193
15.2 設定輸出字元串的字型效果 ......................................................................................... 194
15.3 通過數學公式和數學表達式學習TeX 符號的編寫規則 ........................................ 195
15.4 通過數學符號和希臘字母學習TeX 符號的編寫規則 ................................................... 204
附錄A SciPy 的安裝方法 ................................................................................................... 209
附錄B IPython 的使用方法 ................................................................................................ 211
附錄C mpl_toolkits 包的安裝方法和使用方法.................................................................... 221
附錄D Python 2 和Python 3 的軟體版本的使用建議 ........................................................ 226