教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

問(wèn)答>python+大數(shù)據(jù)開(kāi)發(fā)>matplotlib繪制的圖形是只有一種結(jié)構(gòu)嗎?

matplotlib繪制的圖形是只有一種結(jié)構(gòu)嗎?

來(lái)源傳智教育2022年06月23日 18時(shí)03分38秒

  不是。假設(shè)想畫(huà)一副素描畫(huà),首先需要在畫(huà)架上放置并固定一個(gè)畫(huà)板,然后在畫(huà)板上放置并固定一張畫(huà)布,最后在畫(huà)布上畫(huà)圖。同理,使用matplotlib庫(kù)繪制的圖形并非只有一層結(jié)構(gòu),它也是由多層結(jié)構(gòu)組成的,以便對(duì)每層結(jié)構(gòu)進(jìn)行單獨(dú)設(shè)置。

  使用matplotlib繪制的圖形主要由3層組成:容器層、圖像層和顯示層。

  1.容器層

  容器層主要由Canvas對(duì)象、Figure對(duì)象、Axes對(duì)象組成,其中Canvas對(duì)象充當(dāng)畫(huà)板的角色,位于底層;Figure對(duì)象充當(dāng)畫(huà)布的角色,它可以包含多個(gè)圖表,位于Canvas對(duì)象的上方,也就是用戶(hù)操作的應(yīng)用層的第一層;Axes對(duì)象充當(dāng)畫(huà)布中繪圖區(qū)域的角色,它擁有獨(dú)立的坐標(biāo)系,可以將其看作一個(gè)圖表,位于Figure對(duì)象的上方,也就是用戶(hù)操作的應(yīng)用層的第二層。Canvas對(duì)象、Figure對(duì)象、Axes對(duì)象的層次關(guān)系如圖1-1所示。

  需要說(shuō)明的是,Canvas對(duì)象無(wú)須用戶(hù)創(chuàng)建。Axes對(duì)象擁有屬于自己的坐標(biāo)系,它可以是直角坐標(biāo)系,即包含x軸和y軸的坐標(biāo)系,也可以是三維坐標(biāo)系(Axes的子類(lèi)Axes3D對(duì)象),即包含x軸、y軸、z軸的坐標(biāo)系。

  2.圖像層

  圖像層是指繪圖區(qū)域內(nèi)繪制的圖形。

三種對(duì)象的層次關(guān)系.jpg

  圖1-1 Canvas對(duì)象、Figure對(duì)象、Axes對(duì)象的層次關(guān)系

  3.輔助顯示層

  輔助顯示層是指繪圖區(qū)域內(nèi)除所繪圖形之外的輔助元素,包括坐標(biāo)軸(Axis類(lèi)對(duì)象,包括軸脊和刻度,其中軸脊是Spine類(lèi)對(duì)象,刻度是Ticker類(lèi)對(duì)象)、標(biāo)題(Text類(lèi)對(duì)象)、圖例(Legend類(lèi)對(duì)象)、注釋文本(Text類(lèi)對(duì)象)等。輔助元素可以使圖表更直觀(guān)、更容易被用戶(hù)理解,但是又不會(huì)對(duì)圖形產(chǎn)生實(shí)質(zhì)的影響。

  需要說(shuō)明的是,圖像層和輔助顯示層所包含的內(nèi)容都位于Axes類(lèi)對(duì)象之上,都屬于圖表的元素。

和我們?cè)诰€(xiàn)交談!