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

python繪制分組條形圖的示例代碼

 更新時(shí)間:2023年07月10日 11:07:05   作者:微小冷  
本文主要介紹了如何使用python繪制分組條形圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

數(shù)據(jù)導(dǎo)入

我們經(jīng)常會(huì)遇到對(duì)比多個(gè)統(tǒng)計(jì)量隨時(shí)間變化的圖像,比如想知道中國(guó)、美國(guó)以及歐盟最近幾年GDP變化,如下表所示,單位是萬(wàn)億美元。

中國(guó)美國(guó)歐盟
201813.8920.5315.98
201914.2821.3815.69
202014.6921.0615.37
202117.8223.3217.19
202217.9625.4616.64

首先,把這些數(shù)值寫(xiě)入python

import numpy as np
years = np.arange(2018, 2023)
areas = ("PRC", "USA", "EU")
GDPS = {
    'PRC': (13.89, 14.28, 14.69, 17.82, 17.96),
    'USA': (20.53, 21.38, 21.06, 23.32, 25.46),
    'EU': (15.98, 15.69, 15.37, 17.19, 16.64),
}

多組條形圖

然后,調(diào)用bar畫(huà)圖,由于每個(gè)年份都要繪制中國(guó)、美國(guó)以及歐盟三個(gè)條形圖,所以需要合理規(guī)劃每個(gè)條形圖占據(jù)的寬度。在bar中,默認(rèn)每組條形圖的x坐標(biāo)均為整數(shù),故而下面將每個(gè)數(shù)據(jù)條的寬度設(shè)為0.25,并調(diào)用bar_label為這些條形圖添加標(biāo)簽,以區(qū)分中美歐三個(gè)地區(qū)的劃分

import matplotlib.pyplot as plt
x = np.arange(len(years))
width = 0.25
n = 0
for area, gdp in GDPS.items():
    offset = width * n
    rects = plt.bar(x + offset, gdp, width, label=area)
    plt.bar_label(rects, padding=3)
    n += 1
plt.ylabel('GDP/$trilion')
plt.ylim(10, 28)
plt.xticks(x + width, years.astype(str))
plt.legend(loc='upper left')
plt.show()

其中,legend用于調(diào)控圖例所在位置,upper left表示將圖例放在圖像的左上角。如果不想精心設(shè)置,則可設(shè)為best,那么matplotli將會(huì)自行挑選一個(gè)合適的位置放置圖例。

效果如下

其中,藍(lán)色表示中國(guó),橘色表示美國(guó),綠色表示歐盟。從這個(gè)圖就可以非常直觀地看出,三者自2018到2022年的GDP變化情況。

堆疊條形圖

如果想更加直觀地查看2018到2022年間,中、美、歐三個(gè)地區(qū)的GDP增長(zhǎng)情況,那么比較好的方案是繪制堆疊條形圖。

堆疊條形圖的繪制邏輯是,先畫(huà)一個(gè)數(shù)據(jù)條,然后在這個(gè)數(shù)據(jù)條之上,再畫(huà)一個(gè)數(shù)據(jù)條,所以想看增長(zhǎng)率,就要用2022年的GDP減去2018年的,

GDPs = {
    "2018": np.array([13.89, 20.53, 15.98]),
    "2022": np.array([17.96, 25.46, 16.64]),
}
GDPs['2022'] -= GDPs['2018']

然后設(shè)置一個(gè)條形圖的底部,這樣每次繪制條形圖的時(shí)候,都以這個(gè)bottom為底,就可以起到堆疊的效果

bottom = np.zeros(3)
for lbl, gdp in GDPs.items():
    p = plt.bar(areas, gdp, label=lbl, bottom=bottom)
    plt.bar_label(p, label_type='center')
    bottom += gdp
plt.ylabel('GDP/$trilion')
plt.legend(loc="upper right")
plt.show()

結(jié)果如圖所示

可見(jiàn),這五年中國(guó)的GDP漲了4萬(wàn)億美元,美國(guó)則接近5萬(wàn)億,而歐盟則增長(zhǎng)甚微,給人一種有人退歐的感覺(jué)。

到此這篇關(guān)于python繪制分組條形圖的示例代碼的文章就介紹到這了,更多相關(guān)python分組條形圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

铁岭市| 西贡区| 麻城市| 仪陇县| 庆云县| 永德县| 拉萨市| 岳西县| 张家港市| 恩平市| 年辖:市辖区| 吴忠市| 荥经县| 嘉黎县| 五莲县| 应城市| 二连浩特市| 海城市| 会理县| 龙山县| 忻州市| 札达县| 新兴县| 郸城县| 玉树县| 武汉市| 青河县| 延寿县| 南江县| 陆良县| 康平县| 钟祥市| 平顶山市| 贵定县| 洛浦县| 马龙县| 宜兰市| 翁源县| 黎平县| 姚安县| 威远县|