I want to be able to start, stop, and move the dynamically moving point simultaneously in both animations. The "PlayPauseButton" in the animations only controls the given animation. Indeed, I want both animations to always by synchronized.
system = {x'[t] == 2 x[t] - 0.08 x[t] y[t], x[0] == 400,
y'[t] == -y[t] + 0.01 x[t] y[t], y[0] == 25};
sol = NDSolve[system, {x[t], y[t]}, {t, 0, 21.5}];
{x1[t_], y1[t_]} = {x[t], y[t]} /. Flatten[sol];
px4 = Plot[x1[t], {t, 0, 21.5}, PlotRange -> {0, 400}, PlotStyle -> {Black}];
py4 = Plot[y1[t], {t, 0, 21.5}, PlotRange -> {0, 400}, PlotStyle -> {Black, Dashed}];
Row[
{Animate[
Show[px4, py4,
Graphics[{PointSize[Large], Red, Point[Dynamic[{t, x1[t]}]],
Point[Dynamic[{t, y1[t]}]]}]], {t, 0, 21.5,
AppearanceElements -> "PlayPauseButton"}, SaveDefinitions -> True,
AnimationRate -> 0.251, AppearanceElements -> "PlayPauseButton",
BaselinePosition -> Bottom],
Animate[
Show[ParametricPlot[{x1[t], y1[t]},{t, 0, 5.375}, AxesLabel -> {"Prey", "Predator"},
AspectRatio -> 1, PlotRange -> {{0, 400}, {0, 80}}],
Graphics[{Red, PointSize[Large], Point[{x1[t], y1[t]}]}]],
{t, 0, 5.375, AppearanceElements -> "PlayPauseButton"},
SaveDefinitions -> True, AnimationRate -> 0.251,
BaselinePosition -> Bottom]}, Frame -> True, RoundingRadius -> 10]
The desired slider should fit into the frame space above the first "Animate". Perhaps I could have rewritten this code with Manipulate, but I don't know how to do that either.