python绘制动态圆_python – 在2D动画上绘制可变大小和位置的圆圈
时间: 2024-03-24 16:40:06 浏览: 128
要在2D动画上绘制可变大小和位置的圆圈,可以使用Python中的matplotlib库。
以下是一个简单的示例代码,演示如何使用matplotlib动态地绘制圆圈:
```python
import matplotlib.pyplot as plt
import numpy as np
import time
fig, ax = plt.subplots()
circle, = ax.plot([], [], 'bo', ms=10) # 创建一个空的圆圈
def init():
ax.set_xlim(-1, 1)
ax.set_ylim(-1, 1)
return circle,
def update(frame):
x, y = np.random.uniform(-1, 1, size=2) # 随机生成圆圈的位置
r = np.random.uniform(0, 0.5) # 随机生成圆圈的半径
circle.set_data(x, y)
circle.set_markersize(r*20) # 根据半径设置圆圈的大小
return circle,
ani = animation.FuncAnimation(fig, update, frames=range(50), init_func=init, blit=True, interval=50)
plt.show()
```
在这个示例中,我们使用`FuncAnimation`函数创建一个动画,其中`update`函数在每一帧中更新圆圈的位置和大小。我们使用`set_data`和`set_markersize`方法来更新圆圈的位置和大小,然后返回更新后的圆圈对象。
使用`interval`参数指定帧之间的时间间隔,以控制动画的速度。
当你运行这个代码时,你会看到一个动态的圆圈在图形上移动和改变大小。
阅读全文