真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

matplotlib可視化系列之【基礎(chǔ)元素】

概要

matplotlib算是歷史悠久的python可視化庫(kù)了,2003年就發(fā)布了 v0.10 版本,現(xiàn)在已經(jīng)到了 v3.x 版本了。
?

成都創(chuàng)新互聯(lián)主營(yíng)酒泉網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開發(fā)公司,酒泉h5微信小程序定制開發(fā)搭建,酒泉網(wǎng)站營(yíng)銷推廣歡迎酒泉等地區(qū)企業(yè)咨詢

代碼和功能雖然有翻天覆地改變,但由于其歷史悠久,功能強(qiáng)大,用戶基數(shù)龐大,所以,我們?cè)谑褂?matplotlib 庫(kù)的時(shí)候,幾乎可以搜索到我們需要的各種示例。
?

我之前的做的一些數(shù)據(jù)分析結(jié)果的展示項(xiàng)目,沒有去研究 matplotlib 的文檔,只是看看接口和示例,也能寫出各種分析結(jié)果的展示。
?

但是,系統(tǒng)地去了解下 matplotlib 庫(kù)還是有必要的,一方面了解之后可以寫出更高效的代碼,另一方面,對(duì)各種示例能做到知其然也知其所以然,更高效的對(duì)示例做一些微調(diào)。
?

基礎(chǔ)元素

下面都是 matplotlib 庫(kù)中一些基本元素的術(shù)語(yǔ),直接用的英文,沒有翻譯,這樣方便和庫(kù)的API對(duì)應(yīng)上(庫(kù)中的API函數(shù)也是使用這些英文名稱)。

matplotlib 中重要的基礎(chǔ)元素主要有5種:

  1. Figure:最重要的元素,所有的其他元素都是繪制在其上
  2. Axes:第二重要的元素,也就是 subplot(子圖),數(shù)據(jù)都是顯示在這個(gè)區(qū)域
  3. Axis:坐標(biāo)軸,本質(zhì)是一種帶裝飾的 spines,一般分為 xaxis 和 yaxis
  4. Spines:數(shù)據(jù)顯示區(qū)域的邊界,可以顯示或不顯示
  5. Artist:任何顯示在 Figure 上的元素

?

這5個(gè)元素的概念不是互相獨(dú)立的,比如 Axis 可以看做是一種 Spines,而Figure,Axes和Axis都可以看成是 Artist。
Artist 是很通用的概念,幾乎任何需要繪制的元素都可以當(dāng)成是 Artist,但是一個(gè) Artist 只能存在于一個(gè) Axes 之上。
?

圖元(graphic primitives)

圖元可以看作是可編輯的 Artist,包括:

  1. Patches,比如 markers,bars,也可以是一系列的 circles,rectangles,polygons等等
  2. Lines,比如 ticks,hatches等等
  3. Texts,支持任意的字體,也支持 latex 格式的數(shù)學(xué)格式

?

通過下圖可以看到 Figure 上顯示的各類圖元:

繪制圖形的引擎(Backends)

matplotlib 的圖形繪制引擎也是可以設(shè)置的,根據(jù)顯示的要求選擇柵格圖或者矢量圖。

Renderer Type FileType
Agg 柵格圖 png
PS 矢量圖 Postscript(PS)
PDF 矢量圖 pdf
SVG 矢量圖 svg
Cairo 柵格圖/矢量圖 png/pdf/svg

這些 renderers 可以圖形接口(UI)對(duì)接

Interface Renderer Dependencies
GTK3 Agg/Cairo PyGObject & Pycairo
QT4 Agg PyQt4
QT5 Agg PyQt5
Tk Agg TkInter
Wx Agg wxPython
Web Agg Browser

外形尺寸和清晰度(dimmensions & resolution)

matplotlib 的尺寸的單位是(inch),可以在初始化指定,也可以在隨后的代碼中指定。
比如:

plt.figure(figsize=(6, 6))  # 生成的圖像是 6英寸 * 6英寸的

這里的單位是英寸,不是像素。如何要生成指定像素的圖像,還需要指定清晰度,也就是dpi(dots per inch)。
比如:

plt.figure(figsize=(6, 6), dpi=100)  # 生成 600*600 像素的圖像
plt.figure(figsize=(5.12, 5.12), dpi=100)  # 生成 512*512 像素的圖像

也就是說,像素由圖形大小乘以其清晰度來決定的,figsize控制圖像的大小,dpi控制圖像的清晰度。

總結(jié)

對(duì) matplotlib 中的基礎(chǔ)元素和概念的了解有助于理解它的文檔中各類API的劃分依據(jù),繪制復(fù)雜圖像的時(shí)候,能夠更合理的規(guī)劃顯示區(qū)域和繪制順序。


新聞標(biāo)題:matplotlib可視化系列之【基礎(chǔ)元素】
鏈接URL:http://weahome.cn/article/dsojdoc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部