我目前正在对轨道的轨迹进行编码,并试图在一次运行中绘制两个图形。我想用一个图形来显示卫星的轨道轨迹,在图中地球和月球都是圆形的。然后我想要一个单独的数字,显示轨迹随时间的能量。在
我认为我的问题在于试图在第一个数字上添加圆圈,尽管我完全不知道如何规避这个问题。Re和Rm分别是地球和月球的半径,列表只是我在代码其余部分的值的列表。我想问题出在图中,轴=plt.子批次行。我没有得到两个单独的数字,而是把所有的值混成一个数字。在
plt.figure(1)
fig, axes = plt.subplots()
earth = plt.Circle((0,0), Re, color = 'blue' )
moon = plt.Circle((0,ym), Rm, color = 'yellow' )
plt.gca().set_aspect('equal', adjustable='box')
plt.plot(xlist,ylist)
axes.add_patch(earth)
axes.add_patch(moon)
plt.figure(2)
plt.plot(tlist,pelist, 'r')
plt.plot(tlist,kelist, 'b')
plt.plot(tlist,elist, 'g')
plt.show()
第二个图没有
plt.plot()
可以绘制的子图。因此,它取最后一个打开的子批次(轴)。还有一个数字比游戏需要的多。在简单的解决方案是删除双图形创建并在第二个图形中添加一个子图:
一个更好的解决方案是只使用creted对象进行打印(matplotlib API)。在
^{pr2}$在这种情况下,很明显这些图属于哪个轴。在
相关问题 更多 >
编程相关推荐