<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Pandas知識點-繪制統(tǒng)計圖

          共 2891字,需瀏覽 6分鐘

           ·

          2021-04-02 12:39



          使用matplotlib可以繪制各種各樣的統(tǒng)計圖,Pandas對matplotlib中的繪圖方法進行了更高層的封裝,使用起來更簡單方便。


          本文介紹Pandas中最基本的幾種統(tǒng)計圖的繪制方法,都非常常用。


          本文使用的數(shù)據(jù)來源于網(wǎng)易財經,具體下載方法可以參考:Pandas知識點-DataFrame數(shù)據(jù)結構介紹


          一、數(shù)據(jù)準備


          數(shù)據(jù)文件是600519.csv,將此文件放到代碼同級目錄下,從文件中讀取出數(shù)據(jù)。


          為了使數(shù)據(jù)簡潔一點,刪除了一些列,設置“日期”為索引。



          讀取的原始數(shù)據(jù)如上圖,本文基于這些數(shù)據(jù)來繪制統(tǒng)計圖。


          二、繪制折線圖



          Pandas中直接用Series對象或DataFrame對象調用plot()方法既可以繪制統(tǒng)計圖。


          kind: 使用kind參數(shù)指定圖形的種類,line表示折線圖,scatter表示散點圖,bar表示柱狀圖,barh表示水平柱狀圖,hist表示直方圖,pie表示餅圖。這六種圖形是最常用的圖形,kind還支持其他圖形,如box表示箱圖等。


          figsize: 使用figsize參數(shù)設置圖形的大小,參數(shù)格式為(width, height)。


          xlabel: 圖形中會顯示x軸的標簽,可以使用xlabel參數(shù)修改或設置不顯示,ylabel同理。


          繪圖時為了顯示(show()方法)圖形,會導入matplotlib.pyplot(as plt),可以使用plt對象的xticks()方法設置x軸刻度值,刻度值的傾斜度等,yticks()同理。可以使用text()方法添加圖形中的數(shù)值標簽。



          kind參數(shù)默認為line,在繪制折線圖時可以不指定kind參數(shù)。


          linestyle: 使用linestyle參數(shù)設置折線圖的線型,如'--'表示虛線,'-.'表示點線等。

          marker: 使用marker參數(shù)設置折線圖中數(shù)值點的樣式,可以設置'o','*'等。


          用DataFrame對象繪制折線圖時,有多組數(shù)據(jù),調用plot()方法會自動繪制出條折線圖,并且自動設置好圖例,比matplotlib方便很多。


          三、繪制散點圖



          設置kind參數(shù)為scatter即可繪制散點圖。


          需要注意的是,在Pandas中,scatter不支持Series對象,只支持DataFrame對象,所以不能用Series對象繪制散點圖。


          繪制散點圖時,通過x參數(shù)和y參數(shù)指定散點圖的x軸數(shù)據(jù)和y軸數(shù)據(jù)。x和y都是DataFrame中的列標簽,繪圖時會根據(jù)列標簽讀取對應列的數(shù)據(jù)。


          s: 使用s參數(shù)設置散點圖中點的大小。



          在Pandas中,繪制圖形除了在plot()中指定kind參數(shù)外,還可以通過plot鏈式調用對應的方法,如plot.scatter()表示繪制散點圖,后面繪制柱狀圖、直方圖、餅圖等也可以用鏈式調用的方式。


          alpha: 設置圖形顯示的透明度,默認是None,可以傳入0~1之間的數(shù),值越小越透明。


          marker參數(shù)與折線圖中的用法相同,當設置成'*'時,顯示的圖形為五角星,當然還有很多其他的類型,可以參考matplotlib中的markers模塊。


          c: c參數(shù)用于設置散點圖的顏色,可以指定一個顏色,也可以設置成一個數(shù)組或浮點數(shù),如例子中使用numpy生成一個隨機的數(shù)組,顏色隨機從cmap中獲取。


          cmap: cmap參數(shù)用于設置點的顏色熱力圖,默認為image.cmap,可以設置成自己需要的顏色類型,參考matplotlib中的colors模塊。只有當顏色參數(shù)c設置成數(shù)組或浮點數(shù)時,cmap參數(shù)才有用。


          設置cmap參數(shù)后,會在圖形右邊生成一個柱狀的顏色漸變圖,就像下圖這樣。此時x軸的刻度值會被自動隱藏,將colorbar參數(shù)設置成False,可以隱藏顏色漸變圖,重新顯示x軸刻度值。



          s參數(shù)也可以設置成一個數(shù)組,如例子中也是用numpy生成一個隨機的數(shù)組,使每個點的大小不一樣。


          四、繪制柱狀圖



          使用plot鏈式調用bar()方法,或在plot()中設置kind為bar,都可以繪制柱狀圖。


          width: width參數(shù)用于設置柱狀圖的寬度,默認為0.8,可以根據(jù)需要進行修改。柱狀圖的每一組柱子是獨立的,所以中間留好適合的間距會更好,width一般都設置成小于1。


          bottom: bottom參數(shù)用于設置柱狀圖的底部位置(使柱狀圖“上浮”),默認為0,這個參數(shù)一般不需要修改,保持0即可。設置bottom參數(shù)后,柱狀圖會沿y軸方向上移,如設置為200,則柱狀圖上移200,從y坐標為200的地方開始繪制,柱狀圖的長度不發(fā)生改變。例子中的0.5相對于2000多的數(shù)值差距太大,看不出來。


          color: color參數(shù)用于設置柱狀圖的顏色,前面折線圖和散點圖是用c參數(shù),有一點差異。當柱狀圖中有多組數(shù)據(jù)時,最好傳入一個數(shù)組,使不同組的柱狀圖顏色不一樣,方便區(qū)分。


          五、繪制水平柱狀



          使用plot鏈式調用barh()方法,或在plot()中設置kind為barh,就可以繪制水平柱狀圖了,參數(shù)用法與bar()方法一樣。當然,在設置x軸刻度值,y軸刻度值,數(shù)值標簽等時要注意方向的轉換。


          六、繪制直方圖



          使用plot鏈式調用hist()方法,或在plot()中設置kind為hist,都可以繪制直方圖。這里要強調的是,直方圖不是柱狀圖,兩者的應用場景完全不同。


          繪制直方圖前,要根據(jù)數(shù)據(jù)的分布設置好適合的組距,然后根據(jù)組距計算出組數(shù)。

          bins: bins參數(shù)用于設置直方圖的組數(shù),傳入計算的組數(shù)。


          如果需要顯示圖例,使用plt對象的legend()方法設置即可。


          七、繪制餅圖



          使用plot鏈式調用pie()方法,或在plot()中設置kind為pie,都可以繪制餅圖(扇形圖)。


          餅圖是用于展示數(shù)據(jù)占比的,所以要先確定數(shù)據(jù)是否符合預期,如果不符合要先進行處理。


          autopct: autopct參數(shù)用于設置餅圖中的百分比格式,如'%.2f%%'表示保留兩位小數(shù)。


          colors: colors參數(shù)用于設置每個扇形的顏色,與數(shù)據(jù)分類一一對應,傳入一個長度與數(shù)據(jù)分類數(shù)相等的列表。


          explode: explode參數(shù)用于設置每個扇形到圓心的距離,傳入一個長度與數(shù)據(jù)分類數(shù)相等的列表,默認每個扇形到圓心的距離都是0,將想要分離展示的扇形距離設置成一個適合的值,如0.1,即可將該部分突出展示。


          pctdistance: pctdistance參數(shù)用于設置百分比顯示離圓心的距離,默認值是0.6,可以按需將pctdistance參數(shù)增大或減小。


          textprops: textprops參數(shù)用于設置標簽和百分比的字體、大小等,傳入一個字典。


          以上就是Pandas中六種常用統(tǒng)計圖的繪制介紹,如果需要代碼和數(shù)據(jù),可以點擊關注公眾號“Python碎片”,然后在后臺回復“pandas05”關鍵字獲取本文代碼和數(shù)據(jù)。


          瀏覽 122
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  丁香五月激情六月 | 国产一线在线 | 超碰在线国产 | 大香蕉之久久 | 国产精品特级s毛片 |