最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python繪制簡單直方圖的方法

 更新時(shí)間:2022年04月21日 10:21:13   作者:一只會(huì)飛的豬?  
這篇文章主要為大家詳細(xì)介紹了python繪制簡單直方圖的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

直方圖,又稱質(zhì)量分布圖,是一種統(tǒng)計(jì)報(bào)告圖,由一系列高度不等的縱條或線段表示數(shù)據(jù)分布情況。用橫軸表示數(shù)據(jù)類型,縱軸表示分布情況。直方圖是數(shù)值數(shù)據(jù)分布的精確圖形表示。繪制連續(xù)性的數(shù)據(jù),展示一組或多組數(shù)據(jù)的分布狀況。

直方圖的繪制和條形圖有些相似,需要把plt.bar()修改成plt.hist(),更改圖形的擬合方式,即可繪制直方圖。例如你獲取到了250部電影的數(shù)量,他們的時(shí)長都在80-140分鐘,如何呈現(xiàn)電影的時(shí)長分布情況呢?

老規(guī)矩,上代碼:

'''
? ? 組數(shù)=極差/組距
'''
from matplotlib import pyplot as plt
from matplotlib import font_manager
import random
?
a = [random.randint(80,140) for i in range(250)]
print(a)
print(max(a)-min(a))
?
# 計(jì)算組數(shù)
d = 3 ?# 組距
num_bins = (max(a)-min(a))//d
?
# 設(shè)置圖形大小
plt.figure(figsize=(20, 8), dpi=80)
plt.hist(a, num_bins)
?
# 設(shè)置x軸刻度
plt.xticks(range(min(a), max(a)+d, d))
?
# 設(shè)置網(wǎng)格
plt.grid(alpha=0.4)
plt.show()

運(yùn)行結(jié)果如下圖:

程序分析:通過隨機(jī)數(shù)random.randint()生成250個(gè)80-140的隨機(jī)整數(shù),代表250部電影的時(shí)長。然后要把時(shí)間段分成組,設(shè)置組距d為3,那么(max-min)//d即為分成的組數(shù),然后通過plt.hist()對(duì)組數(shù)和數(shù)據(jù)進(jìn)行擬合。設(shè)置x刻度時(shí),因?yàn)閞ange含頭不含尾,所以最后截止的位置要加一個(gè)組距d,才能顯示完全??梢钥闯觯@個(gè)數(shù)字直方圖可以顯示每個(gè)電影時(shí)長在每個(gè)時(shí)段占得數(shù)目。那么問題又來了,如果想要知道在每個(gè)時(shí)段占總時(shí)段的比例呢,也就是頻率分布直方圖?

so easy! 只需要在plt.hist()里面設(shè)置參數(shù)density=True實(shí)現(xiàn)數(shù)量的頻率化,其余不變。

代碼如下:

'''
? ? 組數(shù)=極差/組距
'''
from matplotlib import pyplot as plt
from matplotlib import font_manager
import random
?
a = [random.randint(80,140) for i in range(250)]
print(a)
print(max(a)-min(a))
?
# 計(jì)算組數(shù)
d = 3 ?# 組數(shù)
num_bins = (max(a)-min(a))//d
?
# 設(shè)置圖形大小
plt.figure(figsize=(20,8),dpi=80)
plt.hist(a,num_bins,density=True) ?# 使用density實(shí)現(xiàn)頻率化
?
# 設(shè)置x軸刻度
plt.xticks(range(min(a),max(a)+d,d))
?
# 設(shè)置網(wǎng)格
plt.grid(alpha=0.4)
plt.show()

運(yùn)行結(jié)果:

顯而易見,每個(gè)時(shí)段的數(shù)目變成了總體的占比,也就是頻率,很好的達(dá)到了想要的效果。

那如果要自己設(shè)置數(shù)據(jù)自己設(shè)置x軸的距離,對(duì)x軸的刻度不均勻劃分呢?

上代碼:

# coding=utf-8
from matplotlib import pyplot as plt
from matplotlib import font_manager
?
interval = [0,5,10,15,20,25,30,35,40,45,60,90,150]
width = [5,5,5,5,5,5,5,5,5,15,30,60]
quantity = [836,2737,3723,3926,3596,1438,3273,642,824,613,215,47]
?
plt.figure(figsize=(20,8),dpi=80)
?
plt.bar(range(len(quantity)),quantity,width=1)
?
# 設(shè)置x軸刻度
_x = [i-0.5 for i in range(13)]
?
plt.xticks(_x, interval)
?
plt.grid(alpha=0.8)
plt.show()

運(yùn)行結(jié)果如下圖:

可以看出來,很簡單,只需要把x軸對(duì)應(yīng)的數(shù)據(jù)設(shè)置好,把對(duì)應(yīng)x軸的刻度設(shè)置好,進(jìn)行數(shù)據(jù)匹配即可。一定要注意,分配的組數(shù)和數(shù)據(jù)個(gè)數(shù)匹配問題。

總結(jié):這篇文章總的講述了一下繪制頻數(shù)直方圖和頻率直方圖的繪制方法,通過圖像進(jìn)行比較,發(fā)現(xiàn)各個(gè)直方圖的優(yōu)缺點(diǎn),以便在工程中進(jìn)行運(yùn)用。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python讀取并定位excel數(shù)據(jù)坐標(biāo)系詳解

    python讀取并定位excel數(shù)據(jù)坐標(biāo)系詳解

    這篇文章主要介紹了python讀取并定位excel數(shù)據(jù)坐標(biāo)系詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-06-06
  • Python下線程之間的共享和釋放示例

    Python下線程之間的共享和釋放示例

    這篇文章主要用示例簡單介紹了Python下線程之間的共享和釋放,線程一直是Python開發(fā)者中的熱點(diǎn)問題,需要的朋友可以參考下
    2015-05-05
  • Python?Tkinter美化彈窗的示例詳解

    Python?Tkinter美化彈窗的示例詳解

    在Python編程中,Tkinter是標(biāo)準(zhǔn)GUI(圖形用戶界面)庫,它允許開發(fā)者創(chuàng)建桌面應(yīng)用程序,本文將詳細(xì)介紹如何使用Tkinter創(chuàng)建并美化彈窗,需要的可以參考下
    2024-12-12
  • python語法?之垃圾回收機(jī)制

    python語法?之垃圾回收機(jī)制

    這篇文章主要介紹了python語法?之垃圾回收機(jī)制,垃圾回收機(jī)制?是Python解釋器自帶一種機(jī),專門用來回收不可用的變量值所占用的內(nèi)存空間,下文相關(guān)介紹,需要的朋友可以參考一下
    2022-04-04
  • 使用Python PIL庫讀取文件批量處理圖片大小實(shí)現(xiàn)

    使用Python PIL庫讀取文件批量處理圖片大小實(shí)現(xiàn)

    這篇文章主要為大家介紹了使用Python PIL庫讀取文件批量處理圖片大小實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • python分?jǐn)?shù)表示方式和寫法

    python分?jǐn)?shù)表示方式和寫法

    在本篇文章里小編給大家整理的是關(guān)于python分?jǐn)?shù)怎么表示的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們學(xué)習(xí)下吧。
    2019-06-06
  • Python基于opencv實(shí)現(xiàn)的簡單畫板功能示例

    Python基于opencv實(shí)現(xiàn)的簡單畫板功能示例

    這篇文章主要介紹了Python基于opencv實(shí)現(xiàn)的簡單畫板功能,結(jié)合實(shí)例形式分析了Python使用opencv模塊進(jìn)行圖形繪制的相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • 部署Django到阿里云服務(wù)器教程示例

    部署Django到阿里云服務(wù)器教程示例

    這篇文章主要介紹了部署Django到阿里云服務(wù)器教程示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Python實(shí)現(xiàn)制作透明背景的電子印章

    Python實(shí)現(xiàn)制作透明背景的電子印章

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)制作透明背景的電子印章,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2022-09-09
  • Python實(shí)現(xiàn)自動(dòng)為照片添加日期并分類的方法

    Python實(shí)現(xiàn)自動(dòng)為照片添加日期并分類的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)自動(dòng)為照片添加日期并分類的方法,涉及Python針對(duì)文件與目錄的遍歷、判斷、修改、復(fù)制及文件屬性的相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09

最新評(píng)論

凤台县| 靖边县| 新野县| 阳信县| 巴林右旗| 且末县| 南京市| 清丰县| 双流县| 个旧市| 佛教| 闻喜县| 乌拉特前旗| 义乌市| 新郑市| 平邑县| 漳州市| 庆云县| 桦南县| 维西| 会昌县| 永嘉县| 宁蒗| 轮台县| 兴业县| 洪湖市| 桃园市| 咸丰县| 内江市| 东阳市| 黎平县| 明水县| 七台河市| 民和| 饶平县| 浦县| 调兵山市| 延边| 隆子县| 绥宁县| 白银市|