Python 繪圖,我只用 Matplotlib(一)
當我們的爬蟲程序已經完成使命,幫我們抓取大量的數據。你內心也許會空落落的。或許你會疑惑,自己抓取這些數據有啥用?如果要拿去分析,那要怎麼分析呢?
說到數據分析,Python 完全能夠勝任這方面的工作。Python 究竟如何在數據分析領域做到遊刃有餘?因為它有「四板斧」,分別是Matplotlib、NumPy、SciPy/Pandas。Matplotlib 是畫圖工具,NumPy 是矩陣運算庫,SciPy 是數學運算工具,Pandas 是數據處理的工具。
1 為什麼選擇 Matplotlib?
Python 有很多強大的畫圖庫,為什麼我偏偏獨愛 Maplotlib?我先買個關子,先來看看還有哪些庫。
- SeabornSeaborn 是一個基於 Matplotlib 的高級可視化效果庫, 偏向於統計作圖。因此,針對的點主要是數據挖掘和機器學習中的變數特徵選取。相比 Matplotlib ,它語法相對簡化些,繪製出來的圖不需要花很多功夫去修飾。但是它繪圖方式比較局限,不過靈活。
- BokehBokeh 是基於 javascript 來實現交互可視化庫,它可以在WEB瀏覽器中實現美觀的視覺效果。但是它也有明顯的缺點。其一是版本時常更新,最重要的是有時語法還不向下兼容。這對於我們來說是噩夢。其二是語法晦澀,與 matplotlib做比較,可以說是有過之而無不及。
- ggplot
ggplot 是 yhat 大神基於 R 語言的 ggplot2 製作的 python 版本庫。 如果你使用 R 語言的話,ggplot2 可以算是必不可少的工具。所以,很多人都推薦使用該庫。不過可惜的是,yhat 大神已經停止維護該庫了。
- PlotlyPlotly 也是一個做可視化交互的庫。它不僅支持 Python 還支持 R 語言。Plotly 的優點是能提供 WEB 在線交互,配色也真心好看。如果你是一名數據分析師,Plotly 強大的交互功能能助你一臂之力完成展示。
- MapboxMapbox 使用處理地理數據引擎更強的可視化工具庫。如果你需要繪製地理圖,那麼它值得你信賴。
總之, Python 繪圖庫眾多,各有特點。但是 Maplotlib 是最基礎的 Python 可視化庫。如果你將學習 Python 數據可視化。那麼 Maplotlib 是非學不可,然後再學習其他庫做縱橫向的拓展。
2 Matplotlib 能繪製什麼圖?
Matiplotlib 非常強大,所以最基本的圖表自然不在話下。
例如說:直線圖