- import numpy as np
- import matplotlib as mpl
- mpl.use(“TkAgg”)
- from matplotlib import pyplot as plt
- from mpl_toolkits.mplot3d import Axes3D#使用mpl_toolkits.mplot3d下Axes3D绘制3D图形
- import matplotlib.animation as animmation
- r1=5
- r2=8
- r3=11
- r4=16
- r5=20
- r6=27
- r7=36
- r8=50#设置轨道半径
- omega1 = 13* np.pi
- omega2 = 9* np.pi
- omega3 = 7* np.pi
- omega4 = 6* np.pi
- omega5 = 5* np.pi
- omega6 = 4* np.pi
- omega7 = 3* np.pi
- omega8 = 2* np.pi#设置行星角速度
- def update(data):#随时间t的变换设置新的行星位置坐标,也即是随着animmation.FuncAnimation函数的帧数参数变化每一帧的不同坐标位置的图片对象参数
-
global line1,line2,line3,line4,line5,line6,line7,line8
-
line1.set_data([data[0], data[1]])
-
line1.set_3d_properties(data[2])
-
line2.set_data([data[3],data[4]])
-
line2.set_3d_properties(data[5])
-
line3.set_data([data[6], data[7]])
-
line3.set_3d_properties(data[8])
-
line4.set_data([data[9], data[10]])
-
line4.set_3d_properties(data[11])
-
line5.set_data([data[12], data[13]])
-
line5.set_3d_properties(data[14])
-
line6.set_data([data[15], data[16]])
-
line6.set_3d_properties(data[17])
-
line7.set_data([data[18], data[19]])
-
line7.set_3d_properties(data[20])
-
line8.set_data([data[21], data[22]])
-
line8.set_3d_properties(data[23])
-
return line1,line2,line3,line4,line5,line6,line7,line8
- def init():#行星的起始位置
-
global line1, line2, line3,line4,line5,line6,line7,line8
python太阳系行星动态演示
最新推荐文章于 2024-07-15 14:21:22 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)