官术网_书友最值得收藏!

3.4 繪圖區(qū)域嵌套子繪圖區(qū)域

在一般情況下,我們不僅可以在一個(gè)繪圖區(qū)域上進(jìn)行數(shù)據(jù)可視化實(shí)踐,還可以在一個(gè)繪圖區(qū)域上嵌套子繪圖區(qū)域,從而實(shí)現(xiàn)畫布上的繪圖區(qū)域的復(fù)合展示。下面,我們就通過(guò)嵌套直方圖和分布函數(shù)曲線等圖形,具體講解繪圖區(qū)域的嵌套的實(shí)現(xiàn)方法。

1.代碼實(shí)現(xiàn)

2.運(yùn)行結(jié)果(見圖3-5)

圖3-5

3.代碼精講

(1)通過(guò)調(diào)用“ax.plot(x,y,ls="-",lw=2,color="steelblue")”語(yǔ)句,繪制主繪圖區(qū)域的折線圖。其中,參數(shù)y是樣本容量為200、均值為75和標(biāo)準(zhǔn)差為15的正態(tài)分布的數(shù)組。

(2)需要在主繪圖區(qū)域嵌套第一個(gè)子繪圖區(qū)域。具體而言,通過(guò)調(diào)用“plt.axes([0.2,0.6,0.2,0.2],axisbg="k")”語(yǔ)句實(shí)現(xiàn)子繪圖區(qū)域的嵌套目標(biāo)。函數(shù) axes([0.2,0.6,0.2,0.2],axisbg="k")中的參數(shù)“[0.2,0.6,0.2,0.2]”表示主繪圖區(qū)域的坐標(biāo)軸經(jīng)過(guò)歸一化到0~1之間后的子繪圖區(qū)域的位置和大小,即[left,bottom,width,height];參數(shù) axisbg 用來(lái)設(shè)置子繪圖區(qū)域的背景顏色,默認(rèn)顏色是白色。根據(jù)“[0.2,0.6,0.2,0.2]”繪制子繪圖區(qū)域上的直方圖“plt.hist(y,bins,color="cornflowerblue")”。

(3)在子繪圖區(qū)域的基礎(chǔ)上,調(diào)用“plt.axes([0.21,0.72,0.05,0.05])”語(yǔ)句,繼續(xù)繪制子繪圖區(qū)域,實(shí)現(xiàn)子繪圖區(qū)域的嵌套目標(biāo)。

(4)在這個(gè)嵌套的子繪圖區(qū)域上,調(diào)用“plt.plot(bins,y1,ls="-",color="r")”語(yǔ)句,繪制概率密度曲線。同時(shí),調(diào)用“plt.xticks([])”和“plt.yticks([])”語(yǔ)句,將坐標(biāo)軸的刻度線去掉。

同理,分別調(diào)用“plt.axes([0.65,0.6,0.2,0.2],axisbg="k")”和“plt.axes([0.66,0.72,0.05,0.05])”語(yǔ)句,繪制另外兩個(gè)子繪圖區(qū)域,完成子繪圖區(qū)域的連續(xù)嵌套的任務(wù)。

(5)在這兩個(gè)子繪圖區(qū)域上,使用“plt.hist(y,bins,color="cornflowerblue",normed=True,cumulative=True,histtype="step")”語(yǔ)句繪制累積階梯形直方圖,使用“plt.plot(bins,y2,ls="-",color="r")”語(yǔ)句繪制分布函數(shù)曲線。

因此,“代碼實(shí)現(xiàn)”部分的整體思路是:先在主繪圖區(qū)域上嵌套子繪圖區(qū)域,再在子繪圖區(qū)域上嵌套更小的子繪圖區(qū)域,從而分別在各自的繪圖區(qū)域上繪制統(tǒng)計(jì)圖形,完成統(tǒng)計(jì)圖形的組合展示的工作。

4.內(nèi)容補(bǔ)充

對(duì)于使用matplotlib 2.0.0及以上版本的讀者而言,只需要將參數(shù)axisbg換成facecolor,就可以正常地執(zhí)行腳本,獲得運(yùn)行結(jié)果。

主站蜘蛛池模板: 赤水市| 德清县| 遂溪县| 清新县| 新平| 海口市| 福安市| 文昌市| 寻乌县| 深圳市| 孙吴县| 明水县| 垣曲县| 太康县| 金昌市| 富民县| 金川县| 桐城市| 乡宁县| 民勤县| 承德市| 云和县| 南汇区| 建水县| 定兴县| 清水河县| 新营市| 深泽县| 陆丰市| 牡丹江市| 家居| 宁河县| 青神县| 瑞安市| 简阳市| 四子王旗| 敦化市| 康平县| 大足县| 黔江区| 青海省|