当前位置: 首页 > 图灵资讯 > 行业资讯> python中Matplotlib面向对象是什么?

python中Matplotlib面向对象是什么?

来源:图灵python
时间: 2024-12-08 16:24:12

之前讲过Matplotlib以及作图的一些小技巧。那么,小编问大家Matplotlib面向对象是什么?有的人就答不上来了。接下来我们一起探究。

Matplotlib中常⽤对象的包含关系为Figure > Axes > (Line2D, Text,etc.)Figure对象表示一整张图表;其中可包含多个绘图区域,可以理解为多个坐标轴,用Axes表示,也可以称之为子图;在每一个子图中绘制具体的图形对象,如点、线、文本等。

很多情况下直接使用pyplot模块就够用了,但是当有多个图和坐标系时,使用面向对象的创建方式可以更加自由地在子图之间进行切换。

对象的创建

fig=plt.figure()
axes=fig.add_subplot(1,1,1)
axes.plot([1,2,3])

axes创建后使用方法与plt没有很大的区别,但是还是会有一些差别,比如标题坐标轴的设置

面向对象与plt的差异

axes.set_title('title')
axes.set_xlabel('x')
axes.set_ylabel('y')

plt.title('title')
plt.xlabel('x')
plt.ylabel('y')

面向对象与plt的相互转化

但是有时本来只是在用plt作图,为了用add_patch而特意创建一个axes就比较麻烦,此时可以用plt.gca()获取当前的Axes对象

plt.plot([1,2,3])
poly=plt.Polygon([[0.5,1],[1,1.5],[1,1]],
facecolor='0.9',edgecolor='0.5')
plt.gca().add_patch(poly)

以上就是python中Matplotlib面向对象的详解。更多Python学习推荐:PyThon学习网教学中心