码一个可能会遇到的问题
有N种不同的方法去实现如---加标题:
plt.set_title() 可以。
ax.title.set_text('title') 也可以。
ax.set_title()也可以,不同层次的实现手段
1.matplotlib 能用不同方式来实现同一功能的原因。
首先 matplotlib 架构上分为三层
底层:backend layer
中层:artist layer
最高层:scripting layer
在任意一层操作都能够实现画图的目的,而且画出来还都一样。但越底层的操作越细节话,越高层越易于人机交互。
.plt 对应的就是最高层 scripting layer。这就是为什么它简单上手,但要调细节就不灵了。
ax.plot 是在 artist layer 上操作。基本上可以实现任何细节的调试。
axes (翻译就是 坐标系)。每一个物体都有一个独立的坐标系。而matplotlib 就是引用这一理念。所以在artist layer上画多条曲线时,你会用 ax1.plot, ax2.plot ... 而最后显示在一张图上是因为所有独立坐标系对齐的结果。
axes就是我们理解的绘图区域,跟坐标轴axis没有直接关联
plt.***和ax.***的区别
plt.figure(): plt.***系列。(提供画布,绘制图)
这是通过matplotlib提供的一个api(程序接口),这个plt提供了很多基本的function可以让你很快的画出图来。
plt.figure(1)
plt.subplot(211) #整个图像窗口分为2行1列, 当前位置为1.
plt.plot(A,B)
plt.show()
fig, ax = plt.subplots()#指定figure和axes,然后对axes单独操作
ax.plot(A,B)
区别figure/axes/axis控制什么的,简单的制作一个quick and dirty的图,plt.xx可用