Python使用統(tǒng)計(jì)函數(shù)繪制簡(jiǎn)單圖形實(shí)例代碼
前言
Matplotlib 是 Python 的繪圖庫。 它可與 NumPy 一起使用,提供了一種有效的 MatLab 開源替代方案。 它也可以和圖形工具包一起使用,如 PyQt 和 wxPython。
用matplotlib繪制一些大家比較熟悉又經(jīng)常混淆的統(tǒng)計(jì)圖形,掌握這些統(tǒng)計(jì)圖形可以對(duì)數(shù)據(jù)可視化有一個(gè)深入理解。
Windows 系統(tǒng)安裝 Matplotlib
進(jìn)入到 cmd 窗口下,執(zhí)行以下命令:
python -m pip install -U pip setuptools python -m pip install matplotlib
Linux 系統(tǒng)安裝 Matplotlib
可以使用 Linux 包管理器來安裝:
Debian / Ubuntu:
sudo apt-get install python-matplotlib
Fedora / Redhat:
sudo yum install python-matplotlib
Mac OSX 系統(tǒng)安裝 Matplotlib
Mac OSX 可以使用 pip 命令來安裝:
sudo python -mpip install matplotlib
安裝完后,你可以使用 python -m pip list 命令來查看是否安裝了 matplotlib 模塊。
$ python -m pip list | grep matplotlib matplotlib (1.3.1)
1.函數(shù)bar()--用于繪制柱狀圖
在x軸上繪制定性數(shù)據(jù)的分布特征
import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False x=[1,2,3,4,5,6,7,8] y=[3,1,4,5,8,9,7,2] plt.bar(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/") plt.xlabel("箱子編號(hào)") plt.ylabel("箱子重量(kg)") plt.show()
2.
2、函數(shù)barh()--用于繪制條形圖
在y軸上繪制定性數(shù)據(jù)的分布特征
import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False x=[1,2,3,4,5,6,7,8] y=[3,1,4,5,8,9,7,2] plt.barh(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/") plt.xlabel("箱子編號(hào)") plt.ylabel("箱子重量(kg)") plt.show()
3.
3、函數(shù)hist()--用于繪制直方圖
在x軸上繪制定量數(shù)據(jù)的分布特征
import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False #set test scores boxWeight = np.random.randint(0,10,100) x = boxWeight #plot histogram bins = range(0,11,1) plt.hist(x,bins=bins, color="g", histtype="bar", rwidth=1, alpha=0.6) #set x,y-axis label plt.xlabel("箱子重量(kg)") plt.ylabel("銷售數(shù)量(個(gè))") plt.show()
4.函數(shù)pie()--用于繪制餅圖
繪制定性數(shù)據(jù)的不同類別的百分比
import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False kinds ="簡(jiǎn)易箱","保溫箱","行李箱","密封箱" colors = ["#e41a1c","#377eb8","#4daf4a","#984ea3"] soldNums = [0.05,0.45,0.15,0.35] #pie chart plt.pie(soldNums, labels=kinds, autopct="%3.1f%%", startangle=60, colors=colors) plt.title("不同類型箱子的銷售數(shù)量占比") plt.show()
5.函數(shù)polar()--用于繪制極線圖
在極坐標(biāo)圖上繪制折線圖
import matplotlib.pyplot as plt import numpy as np barSlices = 12 theta = np.linspace(0.0,2*np.pi,barSlices,endpoint=False) r = 30*np.random.rand(barSlices) plt.polar(theta,r, #theta每個(gè)標(biāo)記所在射線與極徑的夾角,r每個(gè)標(biāo)記到原點(diǎn)的距離 color="chartreuse", linewidth=2, marker="*", mfc="b", ms=10) plt.show()
6.函數(shù)scatter()--用于繪制氣泡圖
二維數(shù)據(jù)借助氣泡圖大小展示三維數(shù)據(jù)
import matplotlib.pyplot as plt import matplotlib as mpl import numpy as np a = np.random.randn(100) b = np.random.randn(100) #colormap:RdYlBu plt.scatter(a,b,s=np.power(10*a+20*b,2),#s散點(diǎn)標(biāo)記的大小 c=np.random.rand(100),#c散點(diǎn)標(biāo)記的顏色 cmap=mpl.cm.RdYlBu,#將浮點(diǎn)數(shù)映射成顏色的顏色映射表 marker='o') plt.show()
7.函數(shù)stem()--用于繪制棉棒圖
繪制離散的有序數(shù)據(jù)
import matplotlib.pyplot as plt import numpy as np x = np.linspace(0.5,2*np.pi,20) y = np.random.randn(20) plt.stem(x,y,linefmt="-.",markerfmt="o",basefmt="-") linefmt棉棒的樣式、markerfmt棉棒末端的樣式、basefmt指定基線的樣式 plt.show()
8.函數(shù)boxplot()--用于繪制箱型圖
繪制箱型圖
import matplotlib.pyplot as plt import matplotlib as mpl import numpy as np mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False x = np.random.randn(1000) plt.boxplot(x) plt.xticks([1],["隨機(jī)數(shù)生成器AlphaRM"]) plt.ylabel("隨機(jī)數(shù)值") plt.title("隨機(jī)數(shù)生成器抗干擾能力的穩(wěn)定性") plt.grid(axis="y",ls=":",lw=1,color="gray",alpha=0.4) plt.show()
9.函數(shù)errorbar()--用于繪制誤差棒圖
繪制y軸方向或是x軸方向的誤差范圍
import matplotlib.pyplot as plt import numpy as np x = np.linspace(0.1,0.6,6) y = np.exp(x) plt.errorbar(x,y,fmt="bo:",yerr=0.2,xerr=0.02) plt.xlim(0,0.7) plt.show()
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。
- Python如何統(tǒng)計(jì)函數(shù)調(diào)用的耗時(shí)
- python統(tǒng)計(jì)函數(shù)被調(diào)用次數(shù)的實(shí)現(xiàn)
- 利用Python實(shí)現(xiàn)簡(jiǎn)單的Excel統(tǒng)計(jì)函數(shù)
- python?DataFrame數(shù)據(jù)分組統(tǒng)計(jì)groupby()函數(shù)的使用
- python統(tǒng)計(jì)函數(shù)庫scipy.stats的用法解析
- Python實(shí)現(xiàn)Mysql數(shù)據(jù)統(tǒng)計(jì)及numpy統(tǒng)計(jì)函數(shù)
- Python中統(tǒng)計(jì)函數(shù)運(yùn)行耗時(shí)的方法
- python常見統(tǒng)計(jì)分析處理函數(shù)解讀
相關(guān)文章
使用Python實(shí)現(xiàn)圖像有效壓縮的方法
在數(shù)字時(shí)代,圖像作為信息傳遞的重要媒介,在網(wǎng)頁設(shè)計(jì)、移動(dòng)應(yīng)用和多媒體制作中扮演著不可或缺的角色,本文將詳細(xì)介紹如何使用Python,一個(gè)功能強(qiáng)大且易于學(xué)習(xí)的編程語言,來實(shí)現(xiàn)圖像的有效壓縮,感興趣的朋友可以參考下2024-03-03python os.listdir按文件存取時(shí)間順序列出目錄的實(shí)例
今天小編就為大家分享一篇python os.listdir按文件存取時(shí)間順序列出目錄的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10Python實(shí)現(xiàn)Smtplib發(fā)送帶有各種附件的郵件實(shí)例
本篇文章主要介紹了Python實(shí)現(xiàn)Smtplib發(fā)送帶有各種附件的郵件實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06Python爬蟲之Selenium多窗口切換的實(shí)現(xiàn)
這篇文章主要介紹了Python爬蟲之Selenium多窗口切換的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12python實(shí)現(xiàn)飛機(jī)大戰(zhàn)(面向過程)
這篇文章主要為大家詳細(xì)介紹了python面向過程實(shí)現(xiàn)飛機(jī)大戰(zhàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05python+requests接口自動(dòng)化框架的實(shí)現(xiàn)
這篇文章主要介紹了python+requests接口自動(dòng)化框架的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08Python利用pangu模塊實(shí)現(xiàn)文本格式化小工具
其實(shí)使用pangu做文本格式標(biāo)準(zhǔn)化的業(yè)務(wù)代碼在之前就實(shí)現(xiàn)了,主要能夠?qū)⒅形奈谋疚臋n中的文字、標(biāo)點(diǎn)符號(hào)等進(jìn)行標(biāo)準(zhǔn)化。但是為了方便起來我們這里使用了Qt5將其做成了一個(gè)可以操作的頁面應(yīng)用,需要的可以了解一下2022-10-10