matplotlib 面向对象作图。
matplotlib作图的层次:
1、Figure_Canvas 绘图的地方,画布。
2、Renderer 在画布上进行绘图的动作。
3、Artist 图画中的元素和元素的集合,包括子图、坐标轴、文本、线、刻度短线、点。绘图中使用的高层接口。
对于多figure的,有一个当前的figure,每次都是对当前的figure进行操作。对于figure下的多axes,有个当前的axes。当前的figure 通过pyplot.figure(n)来设置,当前的axes通过 pytplot.axes(ax) 来设置。这个函数不带参数时,表示获取当前的figure 和 axes。
刻度包括刻度线和刻度文本,ticklabels 是Text 对象,ticklines 是 lines 对象。
Artist的大概结构图如下:
Artist 对象具有 findobj() 方法,该方法用来获取该对象所包含的所有artist 对象,列表的最后一个元素是该对象自身。
pyplot.setp() 用来设置artist 对象的属性,pyplot.getp() 用来获取 artist 对象的属性。pyplot.setp(lines, color="r", linewidth=2.0)
另外,每个 artist 对象还有一系列的 .set_XXX 和 .get_XXX 方法来获取不同的属性,或者通过 .set() 和 .get() 函数传入关键字参数。
text 都是带有坐标的文本。
Axes的方法 annotate bars errorbar fill hist imshow legend plot scatter text | 所创建的对象 Annotate Rectangle Line2D, Rectangle Polygon Rectangle AxesImage Legend Line2D PolygonCollection Text | 添加进的列表 texts patches lines,patches
patches
images legends lines Collections
texts
|