python hist函数_虎哥的python小技巧放送之绘制统计图(2)
先放出第一期讓大家回顧一下上次的內容
虎哥的python小技巧放送之繪制統計圖(1)
第一期主要給大家講了一些圖形設置的東西。這一次開始正式帶大家畫圖~
折線圖:折線圖可以通過matplotlib中的.plot()函數實現,括號內直接填入數據即可
score=[121,132,137,145,149,153,158]plt.plot(score)plt.show()在繪制折線圖時還可以為折線圖加上一個區間陰影,加入區間陰影的函數為.fill_between(x,y1,y2,where=條件表達式,color=顏色,alpha=透明度)。繪制出來最終會把在where條件下的y1與y2之間的范圍填充。舉例:
score=[121,132,137,145,149,153,158]plt.plot(score)x=list(range(7))y1=[120,125,130,135,140,145,150]y2=[125,135,145,155,165,175,185]print(x)print(y1)print(y2)plt.fill_between(x,y1,y2,where=None,color='pink',alpha=0.2)plt.show()直方圖:使用matplotlib中的.hist()函數進行繪制。括號中最少需要填入兩個參數,第一個參數為要進行統計的數字,第二個參數為劃分為幾個區間來統計,其實第二個參數也可以不填寫,系統自行判定劃分為幾個區間,看自己的需求來決定第二個參數。
score=[120,123,123,128,132,137,138,138,145,145,127,148,148,148,149,151,153,155]plt.hist(score,7)條形圖:使用matplotlib()中的bar()進行繪制
首先先和大家區分一下直方圖和條形圖。條形圖通常用來描述分類數據,如男女、學歷、職業這種;而直方圖是什么值都可以取得,用于連續型數據、如工資,3200可以,3200.1也可以。
條形圖的畫法
x=list(range(8))Y = [5,6,2,9,7,5,4,7]plt.bar(x,Y1,width = 0.6,facecolor = 'blue',edgecolor = 'black')plt.show()代碼中的x是柱子對應類別的編號,畫圖是必須通過這個編號唯一標識某一類的。Y就是對應類別編號的數量,width對應柱子的寬度,取值范圍(0,1),facecolor為柱子的填充色,edgecolor為柱子描邊的顏色。
當我們想要繪制水平的條形圖時需要使用另一個函數.barh()。其中表示柱子寬度的參數width將不再適用,現在更改柱子的粗細需要使用height。例:
x=list(range(8))Y1 = [5,6,2,9,7,5,4,7]plt.barh(x,Y1,height = 0.6,facecolor = 'blue',edgecolor = 'black')plt.show()其中還有一個參數bottom,他是繪制柱子的基準,通過更改這個參數可以繪制堆疊條形圖。例如
x=list(range(8))Y1 = [5,6,2,9,7,5,4,7]Y2 = [3,6,4,3,5,6,5,4]plt.bar(x,Y1,width = 0.6,facecolor = 'blue',edgecolor = 'black')plt.bar(x,Y2,width = 0.6,facecolor = 'red',edgecolor = 'black',bottom=Y1)plt.show()讓Y2以Y1為基準開始繪制,就可以完成堆疊圖。
現在觀察上面的圖,類別都用類別編號表示,讀圖時非常不直觀。此時我們可以通過tick_label函數添加條形圖的信息,例:
x=list(range(6))Y1 = [5,6,2,9,7,5]L=['one','two','three','four','five','six']plt.barh(x,Y1,tick_label=L,height = 0.6,facecolor = 'blue',edgecolor = 'black')plt.show()虎哥今日python小課堂先到這啦~今天講了三種圖,所以大家知道的,一定還會有第三期~那我們下期見~
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python hist函数_虎哥的python小技巧放送之绘制统计图(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 宫腔镜检查痛苦吗
- 下一篇: 西红柿的营养成分有什么