(*file directory*)
dir="/Users/hzhou/Desktop/course/NonlinearSound/data/slice_uu1.xy";

(*for single precision*)
data=BinaryReadList[dir,"Real32"];

(*partition every Nx+2+2=68 entries*)
data2=Partition[data,68];

(*get time*)
t=#[[-3]]&/@data2;

(*get uu1 values*)
data3=Rest/@Most/@Most/@Most/@data2;

(*reshape data for 2d plot*)
data4=Table[{j,t[[i]],data3[[i,j]]},{i,Length[t]},{j,64}];

(*plot*)
ListDensityPlot[Flatten[data4,1],
FrameLabel->{"x","t"},AspectRatio->1/GoldenRatio
]

(*reshape data for animating 1d plots*)
data5=Table[{j,data3[[i,j]]},{i,Length[t]},{j,64}];

(*make a list of plots*)
plots=MapThread[
ListPlot[#1,PlotLabel->"t="<>ToString[#2],
Frame->True,FrameLabel->{"x","uu1"}
]&,
{data5,t}];

(*animate*)
ListAnimate[plots]