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

全國咨詢/投訴熱線:400-618-4000

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

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

來源傳智教育2022年06月23日 18時03分38秒

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

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

  1.容器層

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

  需要說明的是,Canvas對象無須用戶創(chuàng)建。Axes對象擁有屬于自己的坐標系,它可以是直角坐標系,即包含x軸和y軸的坐標系,也可以是三維坐標系(Axes的子類Axes3D對象),即包含x軸、y軸、z軸的坐標系。

  2.圖像層

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

三種對象的層次關系.jpg

  圖1-1 Canvas對象、Figure對象、Axes對象的層次關系

  3.輔助顯示層

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

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

和我們在線交談!