【Python基礎(chǔ)】使用統(tǒng)計(jì)函數(shù)繪制簡(jiǎn)單圖形
點(diǎn)擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時(shí)間送達(dá)
# -*- coding:utf-8 -*-import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as np%matplotlib inline%config InlineBackend.figure_format = 'svg'# https://blog.csdn.net/minixuezhen/article/details/81516949plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']mpl.rcParams["axes.unicode_minus"]=False
# some simple datax = [1,2,3,4,5,6,7,8]y = [3,1,4,5,8,9,7,2]# create barplt.bar(x,y,align='center',color="c",tick_label=["q","a","c","e","r","j","b","p"])# labelplt.xlabel("箱子編號(hào)")plt.ylabel("箱子重量(kg)")plt.show()

# some simple datax = [1,2,3,4,5,6,7,8]y = [3,1,4,5,8,9,7,2]# create barplt.barh(x,y,align='center',color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")# labelplt.xlabel("箱子編號(hào)")plt.ylabel("箱子重量(kg)")plt.show()

直方圖與柱狀圖的區(qū)別
# set test scoresboxWeight = np.random.randint(0,10,100)x = boxWeight # 對(duì)該數(shù)據(jù)集進(jìn)行統(tǒng)計(jì)# plot histogrambins = range(0,11,1) # 設(shè)置連續(xù)的邊界值,即直方圖的分布區(qū)間[0,1],[1,2]......plt.hist(x, bins=bins, histtype="bar", rwidth=1, alpha=0.6)# labelplt.xlabel("箱子重量(kg)")plt.ylabel("銷售數(shù)量(個(gè))")plt.show()

kinds = "簡(jiǎn)易箱","保溫箱","行李箱","密封箱"colors = "#e41a1c", "#377eb8", "#4daf4a", "#984ea3"soldsNums = [0.05,0.45,0.15,0.35]# pie chartplt.pie(soldsNums,labels=kinds,autopct="%3.1f%%", startangle=60, colors=colors)plt.title("不同類型個(gè)箱子的銷售數(shù)量占比")plt.show()

極線圖是在極坐標(biāo)系上繪出的一種圖。在極坐標(biāo)系中,要確定一個(gè)點(diǎn),需要指明這個(gè)點(diǎn)距原點(diǎn)的角度和半徑。將這些點(diǎn)連在一起,就構(gòu)成了極線圖。
barSlices = 12theta = np.linspace(0.0, 2*np.pi, barSlices, endpoint=False)r = 30*np.random.rand(barSlices)# theta 角度 r 距離原點(diǎn)的距離 mfc點(diǎn)的顏色 ms點(diǎn)的大小plt.polar(theta, r, color="chartreuse", linewidth=2, marker="*",mfc="b",ms=10)plt.show()

二維數(shù)據(jù)借助氣泡大小展示三維數(shù)據(jù)
a = np.random.randn(100)b = np.random.randn(100)# s 散點(diǎn)標(biāo)記的大小 c 散點(diǎn)標(biāo)記的顏色 cmap 講浮點(diǎn)數(shù)映射為顏色的映射表plt.scatter(a, b, s=np.power(10*a+20*b,2),c=np.random.rand(100),cmap=mpl.cm.RdYlBu,marker="o")plt.show()

x = np.linspace(0.5, 2*np.pi,20)y = np.random.randn(20)# y棉棒長(zhǎng)度 linefmt棉棒樣式 markerfmt棉棒末端樣式 basefmt基線樣式plt.stem(x,y,linefmt="-.",markerfmt="o",basefmt="-", use_line_collection=True)plt.show()

箱線圖是一個(gè)能夠通過5個(gè)數(shù)字來描述數(shù)據(jù)的分布的標(biāo)準(zhǔn)方式,這5個(gè)數(shù)字包括:最小值,第一分位,中位數(shù),第三分位數(shù),最大值,箱線圖能夠明確的展示離群點(diǎn)的信息。箱子的中間一條線,是數(shù)據(jù)的中位數(shù),代表了樣本數(shù)據(jù)的平均水平。箱子的上下限,分別是數(shù)據(jù)的上四分位數(shù)和下四分位數(shù)。這意味著箱子包含了50%的數(shù)據(jù)。
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()

x= np.linspace(0.1,0.6,6)y = np.exp(x)# yerr y軸方向誤差 xerr x軸方向誤差plt.errorbar(x, y, fmt="bo:", yerr=0.2, xerr=0.02)plt.xlim(0,0.7)plt.show()

交流群
歡迎加入公眾號(hào)讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動(dòng)駕駛、計(jì)算攝影、檢測(cè)、分割、識(shí)別、醫(yī)學(xué)影像、GAN、算法競(jìng)賽等微信群(以后會(huì)逐漸細(xì)分),請(qǐng)掃描下面微信號(hào)加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三 + 上海交大 + 視覺SLAM“。請(qǐng)按照格式備注,否則不予通過。添加成功后會(huì)根據(jù)研究方向邀請(qǐng)進(jìn)入相關(guān)微信群。請(qǐng)勿在群內(nèi)發(fā)送廣告,否則會(huì)請(qǐng)出群,謝謝理解~

