考虑以下代码:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.gca()
circle = plt.Circle((0, 0), radius = 0.5)
ax.add_patch(circle)
print(plt.axis())
plt.show()
默认轴限制打印为:
(0.0, 1.0, 0.0, 1.0)
我不知道为什么会这样。那么,我想了解一下为什么?
PS:我知道我能做到plt.axis('scaled')
这样我就可以看到整个圆圈。
绘制函数如plot
or scatter
使用该功能autoscale_view
(source https://github.com/matplotlib/matplotlib/blob/16b7958827f68d991b4bdb8899e832b167097d78/lib/matplotlib/axes/_axes.py#L1383)。然而,add_patch
不调用它(source https://github.com/matplotlib/matplotlib/blob/68176ebb3077f28627f9f1b4769cdd7135fe5535/lib/matplotlib/axes/_base.py#L1537-L1553)。
虽然这解释了why在您的示例中,轴不会自动缩放,我不确定底层的设计选择是什么。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)