












首先我们要理解plt, figure和ax三者的关系。
plt是Matplotlib.pyplot的简称,内部的各种API可以理解成是plt作者给用户准备的懒人包,自动定义一个初始绘图环境,开箱即用。缺点是不够灵活。
而figure可以理解成一个桌面,而每个axes就是桌面上的一张张纸或画布。如下图所示,两者是互相包含的关系。而我们最终的图是画在一张张axes上的。一个figure可以包含多张axes。通过分别定义figure和axes,我们可以更精准地控制每张图的参数,画出更复杂、美丽的组图

因此,当熟悉以上概念,下面来分不同场景或需求,介绍下建议使用的API
import numpy as np
import matplotlib.pyplot as plt
x = range(-100,100)
y = [i*i for i in x]
plt.plot(x,y)

import numpy as np
import matplotlib.pyplot as plt
x = range(-100,100)
y = [i*i for i in x]
fig,((ax11,ax12),(ax21,ax22)) = plt.subplots(2,2)
ax11.plot(x,y)
ax12.plot(x,y)
ax21.plot(x,y)
ax22.plot(x,y)
plt.tight_layout()

import numpy as np
import matplotlib.pyplot as plt
x = range(-100,100)
y = [i*i for i in x]
fig = plt.figure() #定义figure,后面的axes都是在这张figure上绘制
for i in range(8):
ax = fig.add_subplot(4,2,i+1) #这里的4,2是固定值,i+1是因为Python默认从0开始数数
ax.plot(x,y)
plt.tight_layout()

此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。