成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

使用matplotlib繪制并排柱狀圖的實戰(zhàn)案例

89542767 / 667人閱讀

  小編寫這篇文章的一個主要目的,主要是給大家介紹的內(nèi)容是使用matplotlib去進行繪制并排柱狀圖,那么,一個具體的操作實例是什么呢?下面就給大家詳細解答下。


  一、概念說明


  柱狀圖(bar chart),從相同的橫坐標出發(fā),以不同的數(shù)值大小來設(shè)定柱子的高度,進而表示無序或有序的定性數(shù)據(jù)間某個定量指標的大小關(guān)系。


  示意圖如下:

01.png

  (1)在無序的橫坐標情景下,我們常常根據(jù)數(shù)值大小降序排布。


  (2)柱狀圖在縱坐標上可以有正有負,但必須以基準的0線開始繪制,否則會傳遞錯誤的視覺信息。


  (3)當(dāng)類別間數(shù)值差異較大/類別較多/類別命名文本較長時,我們可以考慮將柱形圖逆轉(zhuǎn)90°,即使用條形圖。


  (4)如果手中的數(shù)據(jù)是二維定性的情況,可以根據(jù)需求分別選擇堆疊柱狀圖或者并排柱狀圖。


 ?、俣询B柱狀圖:

02.png

  ---關(guān)注類0-4的大類總量的對比


  ---同時關(guān)注小類a/b占大類的比重


 ?、诓⑴胖鶢顖D(案例對象)

03.png

  ---更關(guān)注小類系列1-3在不同大類1-4間的對比


  ---關(guān)注小類在大類間數(shù)值分布的差異


  ---如果要呈現(xiàn)大類總量信息,可以增加折線圖


  二、數(shù)據(jù)展示


  在本案例中,我們是希望使用python編碼,利用其中matplotlib包繪制并排柱狀圖,因此我們需要二維定序數(shù)據(jù)。


  根據(jù)我專欄其它的案例呢,還是繼續(xù)使用隨機選的八座城市,目的是希望了解八座城市小初高學(xué)校數(shù)量對比(柱狀),以及人口數(shù)情況(折線)。


  秉持城市統(tǒng)計公報中有就記錄,無就百度的原則,得到以下僅供繪圖的數(shù)據(jù)。

04.png

05.png

  上述excel表格的數(shù)據(jù)分別存放,利用下述代碼我們將其導(dǎo)入


  import pandas as pd
  school_num=pd.DataFrame(pd.read_excel('./小初高學(xué)校個數(shù).xlsx'))
  people_num=pd.DataFrame(pd.read_excel('./2020人口普查數(shù)據(jù).xlsx'))


  三、圖像繪制


  import matplotlib.pyplot as plt
  import matplotlib as mpl
  import numpy as np
  #中文和正負號設(shè)置
  mpl.rcParams["font.sans-serif"]=["SimHei"]
  mpl.rcParams["axes.unicode_minus"]=False
  x=np.arange(8)
  bar_width=0.3
  tick_label=school_num['城市']
  plt.figure(figsize=(13,7))
  #柱狀
  plt.bar(x,school_num['小學(xué)'],bar_width,align="center",color="#2bb179",label='小學(xué)',alpha=0.5)
  plt.bar(x+bar_width,school_num['初中'],bar_width,color="b",align="center",label="初中",alpha=0.5)
  plt.bar(x+bar_width*2,school_num['高中'],bar_width,color="orange",align="center",label="高中",alpha=0.5)
  #折線
  plt.plot(x+bar_width,people_num['人數(shù)-萬'],color="#ff796c",marker='o',lw=2,label='人口普查數(shù)(萬)')
  text_x=[x,x+bar_width,x+bar_width*2]
  text_x=[text_x<i>[j]for i in range(3)for j in range(8)]
  text_y=[school_num['小學(xué)'],school_num['初中'],school_num['高中']]
  text_y=[text_y<i>[j]for i in range(3)for j in range(8)]
  plt.xticks(x+bar_width,tick_label,fontsize=18)
  plt.yticks(fontsize=18)
  plt.xlabel("城市",fontsize=20)
  plt.ylabel("學(xué)校數(shù)量",fontsize=20)
  plt.legend(fontsize=16)
  plt.grid()
  #柱型加數(shù)字
  for x,y,text in zip(text_x,text_y,text_y):
  plt.text(x-0.12,y+15,str(text),fontsize=12)
  #plt.savefig(r'./并排柱狀圖示例.png')
  plt.bar(橫坐標位置,柱子數(shù)值)---橫坐標位置一般用np.arange(橫坐標類別數(shù))得到,因此在并排中,每一個小類,都要右移窗寬個單位,如果您覺得緊挨著顯得很密,也可以加0.1讓它們稍稍隔開。
  plt.plot的橫坐標我選擇x+bar_width是因為我們有三個柱子,我希望折線的原點是對應(yīng)橫坐標居中顯示。
  plt.text---這一部分是給整幅圖加文字,但具體加在什么位置需要自己指定。
  plt.xticks(原名稱,新名稱)


  繪制結(jié)果:


  希望對您有所幫助~


  總結(jié)


  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/128445.html

相關(guān)文章

  • 【數(shù)據(jù)科學(xué)系統(tǒng)學(xué)習(xí)】Python # 數(shù)據(jù)分析基本操作[三] matplotlib

    摘要:有一些表示常見圖形的對象稱為塊,完整的集合位于。中的繪圖函數(shù)在中,有行標簽列標簽分組信息。密度圖通過計算可能會產(chǎn)生觀測數(shù)據(jù)的連續(xù)概率分布的估計而產(chǎn)生的。在探索式數(shù)據(jù)分析工作中,同時觀察一組變量的散布圖是很有意義的。 我們在上一篇介紹了 pandas,本篇介紹 matplotlib。 繪圖和可視化 一個用于創(chuàng)建出版質(zhì)量圖表的桌面繪圖包。 Matplotlib API入門 Figure ...

    BDEEFE 評論0 收藏0
  • ??蘇州程序大白一文從基礎(chǔ)手把手教你Python數(shù)據(jù)可視化大佬??《??記得收藏??》

    ??蘇州程序大白一文從基礎(chǔ)手把手教你Python數(shù)據(jù)可視化大佬??《??記得收藏??》 目錄 ????開講啦?。。?!????蘇州程序大白?????博主介紹前言數(shù)據(jù)關(guān)系可視化散點圖 Scatter plots折線圖強調(diào)連續(xù)性 Emphasizing continuity with line plots同時顯示多了圖表 數(shù)據(jù)種類的可視化 Plotting with categorical da...

    Drinkey 評論0 收藏0
  • matplotlib繪圖(1)

    摘要:文章中我們學(xué)習(xí)的主要技能有繪制直線圖,繪制柱狀圖,繪制橫向柱狀圖,繪制堆疊柱狀圖,繪制箱線圖,繪制散點圖等內(nèi)容。創(chuàng)建一個新的圖表把圖表分割成的網(wǎng)格,第一個參數(shù)行數(shù),第二個參數(shù)列數(shù),第三個參數(shù)圖形編號垂直柱狀圖水平柱狀圖堆疊柱狀圖箱線圖散點圖 文章中我們學(xué)習(xí)的主要技能有:繪制直線圖,繪制柱狀圖,繪制橫向柱狀圖,繪制堆疊柱狀圖,繪制箱線圖,繪制散點圖等內(nèi)容。 x=[1,2,3,4] y=[...

    Null 評論0 收藏0
  • 利用 Matplotlib 繪制數(shù)據(jù)圖形(二)

    摘要:先從最常見的圖形開始折線圖條形圖柱狀圖散點圖圓形圖。追蹤和的過程對用戶是隱形的,我們只需要知道每次調(diào)用繪圖方法,該繪圖效果都會呈現(xiàn)在當(dāng)前中就可以了后面會講如何手動變更當(dāng)前和折線圖條形圖柱狀圖散點圖圓形圖分別對應(yīng)著中的五個繪圖函數(shù)。 利用 Matplotlib 繪制數(shù)據(jù)圖形(一) 了解了 Matplotlib 的基本知識之后,我們就可以開始上手試試畫圖了。 先從最常見的圖形開始:折線圖、...

    lansheng228 評論0 收藏0
  • d3入門篇(四):繪制完整柱狀圖添加過渡效果

    摘要:這篇學(xué)習(xí)筆記是入門篇的最后一部分,將前幾篇的內(nèi)容整合到一起,繪制帶過渡效果的柱狀圖,這次先給大家看一下結(jié)果圖。 這篇學(xué)習(xí)筆記是入門篇的最后一部分,將前幾篇的內(nèi)容整合到一起,繪制帶過渡效果的柱狀圖,這次先給大家看一下結(jié)果圖。 結(jié)果 showImg(https://segmentfault.com/img/bVblfGG?w=1230&h=1210); 前言 先放結(jié)果圖是想反饋一下在整合基...

    Jason 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<