根据轨道元素在Python中绘制轨道

1 投票
2 回答
4469 浏览
提问于 2025-04-17 23:40

我写了一个程序,可以输入位置和速度的状态向量,然后计算出所有的开普勒轨道元素。接下来我想做的就是绘制轨道!有没有人能给我一些关于如何用Python 3来实现这个的建议?另外,如果这个地方不适合问这个问题,能告诉我应该去哪里问吗?

2 个回答

-1

我推荐使用OpenCV。在这里我用的是Python的CV2库。

import numpy as np
import cv2

cv2.namedWindow("Orbit",cv2.WINDOW_AUTOSIZE)

im_old = np.zeros((100,100))

for i in range(360*4):
    xc = 50
    yc = 50
    im = im_old.copy()
    x = 25*np.cos(i*np.pi/180.0)+xc
    y = 25*np.sin(i*np.pi/180.0)+yc
    im[(x-2):(x+3),(y-2):(y+3)] = 255
    im_old[x,y] = 128
    cv2.imshow("Orbit",im)
    cv2.waitKey(10);

这个是针对Python 2.7的,不过我觉得应该还是可以用的。

补充说明:这是用来可视化实际运动的,如果你正想要这个的话。

3

最好的绘图工具包就是pyplot,绝对是首选。它基本上是把matlab的绘图系统移植到python上,但效果比原版还要好。你只需要安装numpy和matplotlib,然后看看简单的绘图教程就行了。绘图的方式大概是这样的:

import matplotlib.pyplot as plt;
plt.plot(X, Y, color);
plt.show();

这里的X和Y是对应的x和y值的一维数组。因为你没有提供变量存储的具体细节,所以答案不能更具体了。

撰写回答