The reason is that the path that is stored is for a complete Ellipse and that the angles are not taken into account until draw time. As the bounding box is determined from the saved path this is what happens...
This can be seen be e.g.
from matplotlib.patches import Arc
a = Arc((0,0),1,1,theta1=0,theta2=90)
print(a.get_path())
print(a.get_extents())
A solution to this is probably to define a better get_path-method for Arc.
Activity
oscargus commented on Jun 24, 2022
The reason is that the path that is stored is for a complete Ellipse and that the angles are not taken into account until draw time. As the bounding box is determined from the saved path this is what happens...
This can be seen be e.g.
A solution to this is probably to define a better get_path-method for Arc.
oscargus commented on Jun 24, 2022
This is vaguely related (solving this may solve that): #19550
Also this can be worth considering: #11266
StFroese commented on Jun 24, 2022
@oscargus Thanks a lot!