面向对象的matplotlib的大多数示例都使用类似
的Axis对象import matplotlib.pyplot as plt
fig1 = plt.figure()
ax1 = fig1.add_subplot(111)
ax1.plot(...... etc.
我发现这一点并不明显,特别是从matlab的角度来看。 我最近发现可以通过
获得相同的结果ax1 = fig1.gca() # "GetCurrentAxis"
这对我来说更有意义(可能只是由于之前的Matlab使用)。 为什么 add_subplot()选择了令人困惑的 111 参数作为获取轴对象的首选方法?有什么功能差异吗?
谢谢!
答案 0 :(得分:19)
plt.gca
获取当前轴,如果需要则创建一个。它只相当于最简单的1轴情况。
首选方法是使用plt.subplots
(文档/示例确实有些滞后,如果您想开始贡献,更新文档是一个很好的起点):
fig, ax = plt.subplots(1, 1)
或
fig, (ax1, ax2) = plt.subplots(2, 1)
等等。
答案 1 :(得分:0)
要创建3D实例,有以下三种方法:
plt.gca(projection='3d')
plt.subplot(projection='3d')
fig = plt.figure()
fig.add_subplot(111, projection='3d')
也许第三种方法更复杂。