Animer un nuage de points

Sep 17 2020

J'ai un ensemble de données du format ci-dessous

{time,x_pos,y_pos,z_pos}

Je voudrais faire une animation montrant les changements de coordonnées {x, y, z} au fil du temps dans le tracé de points de liste 3D. Quelqu'un pourrait-il me donner une idée? L'animation finale devrait ressembler à ce qui suit. L'indicateur (cercle vert) se déplace avec l'heure (illustré au-dessus de la figure). Je suis désolé de ne pas pouvoir partager les données. Je vous remercie!

Réponses

3 kglr Sep 18 2020 at 06:06
SeedRandom[1]
dates = Sort @ RandomSample[DateRange[Today, DatePlus[Today, {100, "Day"}]], 30];
data = Join[List /@ dates, Accumulate[RandomReal[10, {30, 3}]], 2];

g1 = Graphics3D[{Blue, Line@data[[All, 2 ;;]]}, BoxRatios -> 1, Axes -> Automatic];

frames = Table[Show[g1, Graphics3D[{Red, Sphere[data[[i, 2 ;;]], 5]}], 
    PlotLabel -> data[[i, 1]], SphericalRegion -> True, 
    ImageSize -> Medium, ImagePadding -> 20, 
    PlotRange -> {{0, 200}, {0, 200}, {0, 200}}], 
  {i, 1, Length @ data}];

ListAnimate[frames]