我是Matplotlib的新手,我正在尝试使用for
循环更新椭圆补丁。
import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse
fig, plts = plt.subplots(1,1)
cE = Ellipse(xy, w, h, theta)
plts.add_patch(cE)
plt.show()
for i in range(0, 10):
xy_update, theta_update = some_function(i)
cE.<?> = xy_update
cE.<?> = theta_update
canvas.draw()
我正在寻找正确的方式<?>
更新椭圆补丁参数。
答案 0 :(得分:1)
有Ellipse.set_center
可以设置椭圆中心的xy
坐标。
虽然具有setter
,但是由angle
选项给出的椭圆的旋转却没有。
您可以在椭圆实例上设置angle
属性,然后设置xy
。
cE.angle = theta_update
cE.set_center(xy_update)
您还可以使用Ellipse.update_from
创建椭圆的新实例,并从中更新旧的椭圆。
cE.update_from(Ellipse(xy_update, w, h, theta_update))