python画动态图流星雨
时间: 2023-11-13 18:56:57 浏览: 124
浪漫流星雨动态壁纸
好的,以下是Python画动态图流星雨的代码:
```python
import random
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig, ax = plt.subplots()
# 设置坐标轴范围
ax.set_xlim(0, 100)
ax.set_ylim(0, 100)
# 创建一个空的列表,用于存储流星的位置和速度
meteors = []
# 创建一个函数,用于生成流星的位置和速度
def generate_meteor():
x = random.uniform(0, 100)
y = random.uniform(0, 100)
speed = random.uniform(1, 5)
return x, y, speed
# 创建一个函数,用于更新流星的位置
def update_meteor(num):
# 每隔一段时间生成一个新的流星
if num % 10 == 0:
meteors.append(generate_meteor())
# 清空画布
ax.clear()
# 遍历所有的流星,更新它们的位置
for i in range(len(meteors)):
x, y, speed = meteors[i]
x += speed
y -= speed
# 如果流星超出了坐标轴范围,则将其从列表中删除
if x > 100 or y < 0:
meteors.pop(i)
else:
ax.plot(x, y, '*', color='white')
# 设置背景色为黑色
ax.set_facecolor('black')
# 创建动画对象
ani = animation.FuncAnimation(fig, update_meteor, interval=50)
# 显示动画
plt.show()
```
阅读全文