对图像组成不了解?这样学习Matplotlib必走弯路!

在学习Matplotlib的过程当中,你们必定会遇到这样那样的问题,好比说,背景图怎么设置?坐标轴怎么设置?坐标轴上的刻度值怎么设置?怎样在PyQt中添加Matplotlib绘图模块?微信

其实想要学好用好Matplotlib是特别简单的,前提就是要必须清楚的了解Matplotlib图像组成。函数

一般状况下,咱们能够将一副Matplotlib图像分红三层结构:工具

  1. 第一层是底层的容器层,主要包括Canvas、Figure、Axes;
  2. 第二层是辅助显示层,主要包括Axis、Spines、Tick、Grid、Legend、Title等,该层可经过set_axis_off()或set_frame_on(False)等方法设置不显示;
  3. 第三层为图像层,即经过plot、contour、scatter等方法绘制的图像。

容器层

容器层主要由Canvas、Figure、Axes组成。学习

Canvas是位于最底层的系统层,在绘图的过程当中充当画板的角色,即放置画布的工具。一般状况下,咱们并不须要对Canvas特别的声明,可是当我须要在其余模块如PyQt中调用Matplotlib模块绘图时,就须要首先声明Canvas,这就至关于咱们在自家画室画画不用强调要用画板,出去写生时要特地带一块画板。3d

Figure是Canvas上方的第一层,也是须要用户来操做的应用层的第一层,在绘图的过程当中充当画布的角色。当咱们对Figure大小、背景色彩等进行设置的时候,就至关因而选择画布大小、材质的过程。所以,每当咱们绘图的时候,写的第一行就是建立Figure的代码。视频

Axes是应用层的第二层,在绘图的过程当中至关于画布上的绘图区的角色。一个Figure对象能够包含多个Axes对象,每一个Axes都是一个独立的坐标系,绘图过程当中的全部图像都是基于坐标系绘制的。对象

辅助显示层

辅助显示层为Axes内的除了根据数据绘制出的图像之外的内容,主要包括Axes外观(facecolor)、边框线(spines)、坐标轴(axis)、坐标轴名称(axis label)、坐标轴刻度(tick)、坐标轴刻度标签(tick label)、网格线(grid)、图例(legend)、标题(title)等内容。blog

该层的设置可以使图像显示更加直观更加容易被用户理解,但又并不会对图像产生实质的影响。继承

图像层

图像层指Axes内经过plot、scatter、hist、contour、bar、barbs等函数根据数据绘制出的图像。it

由此咱们能够看出

  • Canvas位于最底层,用户通常接触不到
  • Figure创建在Canvas之上
  • Axes创建在Figure之上
  • 坐标轴、图例等辅助信息层以及图像层都是创建在Axes之上

此外,对于辅助信息层和图像层所包含的内容

  • 线型的对象均是继承于Line2D的子类
  • 文字型的对象均是继承于Text的子类
  • 相关设置都可参考父类的设置方法

想观看Matplotlib教学视频,了解更多Matplotlib实用技巧可关注

微信公众帐号: MatplotlibClass

今日头条号:Matplotlib小讲堂

相关文章
相关标签/搜索