首页 > 编程语言 > 详细

Python数据分析入门(二十三):绘图分析——Figure容器

时间:2021-04-20 15:50:20      阅读:33      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

解释:

  1. Figure:图形绘制的画板,他就相当于一个黑板,所有的图都是绘制在Figure上面。
  2. Axes:每个图都是Axes对象。一个Figure上可以有多个Axes对象。
  3. Axisx轴、y轴的对象。
  4. Tickx轴和y轴上的刻度对象。每一个刻度都是一个Tick对象。
  5. TickLabel:每个刻度上都要显示文字,这个文字的显示就是在TickLabel上。
  6. AxisLabelx轴和y轴的名称的文字显示。
  7. Legend:图例对象。
  8. TitleAxes图的标题对象。
  9. Line2D:绘制在Axes上的线条对象,比如折线图等。
  10. Reactangle:绘制在Axes上的矩形对象,比如条形图等。
  11. Marker:标记点,比如绘制散点图上的每个点就是这个对象。
  12. Artist:只要是绘制在Figure上的元素(包括Figure),都是Artist的子类。

Figure容器:

Figure容器是最顶层的容器,他几乎包含了这个图的所有对象。通过add_subplotadd_axes方法可以添加Axes对象,这两个方法添加的都是Axes及其子类的对象。添加完成后是存储在figure.axes中。示例代码如下:

In [156]: fig = plt.figure()
In [157]: ax1 = fig.add_subplot(211)
In [158]: ax2 = fig.add_axes([0.1, 0.1, 0.7, 0.3])
In [159]: ax1
Out[159]: <matplotlib.axes.Subplot instance at 0xd54b26c>
In [160]: print(fig.axes)
[<matplotlib.axes.Subplot instance at 0xd54b26c>, <matplotlib.axes.Axes instance at 0xd3f0b2c>]

 

1.1添加Axes对象:

Figure只是一个黑板,如果想要绘图,需要先添加Axes。添加Axes可以通过add_axesadd_subplot来实现。示例代码如下:

# 创建一个figure对象
fig = plt.figure()
# 添加一个Axes
ax1 = fig.add_subplot(211)
# 添加一个Axes,其中参数是left,bottom,width,height
ax2 = fig.add_axes([0.1,0.1,0.8,0.3])

 

1.2操作当前Axes对象:

可以通过figure.gca以及figure.sca来设置和获取当前的axes对象。示例代码如下:

fig = plt.figure()
ax1 = fig.add_subplot(211)
ax2 = fig.add_axes([0,0,1,0.3])
print(fig.gca())
print(fig.sca(ax1))

>> Axes(0,0;1x0.3)
>> AxesSubplot(0.125,0.536818;0.775x0.343182)

 

1.3删除Axes对象:

Figure上的所有Axes对象都是保存在fig.axes中,但是如果想要删除某个Axes对象,那么必须通过delaxes来实现:

fig = plt.figure()
ax1 = fig.add_subplot(211)
ax2 = fig.add_axes([0,0,1,0.3])
fig.delaxes(ax1)
print(fig.axes)

 

1.4. 获取所有的axes:

for ax in fig.axes:
    ax.grid(True) # 设置打开网格

 

1.5. Figure的属性有如下:

 

技术分享图片

 

 


Figure类定义介绍:https://matplotlib.org/api/_as_gen/matplotlib.figure.Figure.html#matplotlib.figure.Figure

Python数据分析入门(二十三):绘图分析——Figure容器

原文:https://www.cnblogs.com/qshhl/p/14680898.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!