相見恨晚,一招搞定數據可視化

數據可視化前面已經寫了3篇(小白開始學Python最著名的繪圖庫,最適合小白學的花色玩Python折線圖|畫個天氣預報,7招用Python畫出酷酷的|散點直方圖),今天咱們來說懶人專用的可視化圖,大部分時候咱們分析數據的最後都是pandas類型的數據結構,其實pandas直接能夠生成matplotlib圖,很是方便一招搞定.數據結構

導言:ide

  • matplotlib雖然很是強大,可是太偏低層和原生態,比如作飯,你須要砍柴,生火,架竈具,最後纔是淘米燒飯
  • 可否有一個相似電飯鍋這樣的庫,直接封裝了matplotlib裏面的庫
  • 而後咱們只須要把數據放進去,設定幾個參數,一副圖就出來了,有的就是神器Pandas自帶的做圖功能

固然後面有空會介紹更高級的神器Tableau,d3函數

1.Pandas一招做圖工具


咱們用一組表格數據,有行有列好比一組學生的數據:3d

相見恨晚,一招搞定數據可視化

  • 這是一個很是很是典型的二維數據,咱們在處理數據的時候常常會用到,聰明的同窗會發現,這不是Pandas的最喜歡的DataFrame類型嗎,對的就是這樣的數據格式
  • 如何可視化呢,若是用之前的方法,須要手動構造x軸和y軸,很是麻煩,有沒有簡單的方法呢
  • 有的,Pandas對象自帶了做圖功能,一招搞定,真的是讓人相見恨晚

相見恨晚,一招搞定數據可視化

  1. 導入三大神庫:pandas,numpy,matplotlib
  2. 構造一個pandas數據對象df,其實表格數據咱們常常從CSV裏面讀進來,因此pandas的對象很是常見
  3. 最精華的來了,直接用df調用plot()函數,一幅漂亮的圖就生成了

相見恨晚,一招搞定數據可視化

  • 哇!x軸和y軸刻度,標籤所有自動搞定,居然還有自動加圖例
  • 數據部分Height,Age,Score通通搞定,並且還自帶顏色
  • 細心的同窗的發現,橫座標其實就是index裏面的列表裏面的值

上面的圖雖然很爽,可是有幾個小問題:對象

  • 文字是豎體,看的不舒服
  • X軸,Y軸沒有說明,如有說明註釋的話能夠更爽一點
  • 圖例能不能放到左上角,y的刻度可否更細一點
  • 數據部分是安裝Age,Height,Score排列的,能不能按照數字大小排序呢
    這些問題通通都更搞定,咱們接着看

2.進一步精雕細琢blog


上面的4問題,雖然是細節,可是一幅好的數據可視乎圖,細節決定成敗,那麼怎麼搞定呢,其實很容易,咱們看一下
相見恨晚,一招搞定數據可視化排序

  • 在原來的df上面增長一個columns,其實就是增長了對數據的列的排序顯示,讓數據從高到低呈現
  • 獲取一個df.plot()的對象,這個對象是啥呢,其實就是返回一個matplotlib的axes對象,有了這個對象咱們就能夠自由的控制子圖上的任何東西
  • 用df.legend()設置一下圖例,並用loc=2 關鍵字控制圖例的位置
  • 用df.set_yticket()從新設置y的刻度,set_ylable設置y軸的註釋,set_title()設置子圖的標題
    相見恨晚,一招搞定數據可視化

如今看的是否是很爽了,通過上面2步,相信你們對pandas做圖應該有所瞭解,pandas還有一種數據結構Series是大同小異呢,那麼好學的小夥伴必定會問,是否是pandas只能畫直方圖啊,固然不是啦,咱們接着看數據分析

3.其餘類型的圖pandas


除了上面的直方圖,pandas能夠簡單就做出折線圖,橫向直方圖,柱狀圖, 密度圖

折線圖:
好比咱們看一組北京的2016/8和2017/8月份的天氣數據

相見恨晚,一招搞定數據可視化
咱們只須要把plot裏面的kind設爲line,就能夠輕鬆畫出折線圖,marker=v表示有箭頭,若是想畫橫向直方圖能夠把kind='barh',畫散佈圖kind='kde'

相見恨晚,一招搞定數據可視化

相見恨晚,一招搞定數據可視化
橫向直方圖:
由於31天的數據橫向展現會很是密集,這裏做爲示例我只取前9天
相見恨晚,一招搞定數據可視化

相見恨晚,一招搞定數據可視化
KDE密度圖:

相見恨晚,一招搞定數據可視化
也是把kind設爲kde便可.密度圖能更好的反應數據內在的集中度,很明顯溫度集中在28-36度之間
相見恨晚,一招搞定數據可視化

結論:


好,懶人專用的Pandas做圖,今天就講到這裏啦,其實還有不少神兵利器能夠方便咱們做圖,好比R語言裏面ggplot2能夠對幾十萬,上百萬的數據很是方便的分析而且作出可視化圖,好比tableau是一款很是火爆的可視化工具,後面有時間我會寫一些這方面的內容。

小白學數據分析可視化,我已經寫了4篇這一個小的系列暫時先告一段落後面還有不少精彩的文章,敬請期待

相關文章
相關標籤/搜索