Animar diagrama de dispersión

Sep 17 2020

Tengo un conjunto de datos del siguiente formato

{time,x_pos,y_pos,z_pos}

Me gustaría hacer una animación que muestre los cambios de coordenadas {x, y, z} a lo largo del tiempo en la gráfica de puntos de lista 3D. ¿Alguien podría darme una idea? La animación final debería tener el siguiente aspecto. El indicador (círculo verde) se mueve con el tiempo (mostrado arriba de la figura). Lamento no haber podido compartir los datos. ¡Gracias!

Respuestas

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]