我有一个矩阵,它包含行星的计算运动数据,这些数据通过ODE计算然后绘制,我需要分别绘制每个行星,是否可以通过使用一组实时做到这一点只对一个矩阵起作用,还是我必须相应地打破矩阵? (太阳,水星,金星,地球,火星,木星,土星,天王星,海王星,冥王星的x,y,z位置和速度有60列。我需要绘制的矩阵中的列是第一列每组六个中的三个
由于
克里斯
答案 0 :(得分:0)
是否可以通过仅使用一个矩阵的set函数实时完成此操作,或者我是否必须相应地破坏矩阵?
这取决于你的绘图方式。
例如,如果您将所有行星定义为带标记的线,则可以使用单个命令进行更新:
% create the line object
l = line(x,y,z,'color','r', 'linestyle', 'none', 'marker', '.', 'markersize', 20);
% update the positions
set(l,'XData', planetPositions(:,1), 'YData', planetPositions(:,2), 'ZData', planetPositions(:,3));
但是如果行星是单独绘制的,那么你需要逐个更新它们的位置。