CartesianFrame[graphics_,title_]:=  Show[Graphics3D[Join[graphics,{Text["x",{11,0,0}],Text["y",{0,11,0}],Text["z",{0,0,11}]}]],Axes->True,AxesOrigin->{0,0,0},PlotRange->{{-10,10},{-10,10},{-10,10}},Boxed->False,PlotLabel->Style[title,FontSize->24],ViewPoint->{5,1,2}];axesFrame = CartesianFrame[{},"Cartesian coordinate system"];xAxis = {Thickness[0.01],Line[{{-10,0,0},{10,0,0}}]};xAxisFrame = CartesianFrame[{xAxis},"x-axis"];yAxis = {Thickness[0.01],Line[{{0,-10,0},{0,10,0}}]};yAxisFrame = CartesianFrame[{yAxis},"y-axis"];zAxis = {Thickness[0.01],Line[{{0,0,-10},{0,0,10}}]};zAxisFrame = CartesianFrame[{zAxis},"z-axis"];yzPlane = {LightBlue,Polygon[{{0,-10,-10},{0,-10,10},{0,10,10},{0,10,-10}}]};
yzPlaneFrame = CartesianFrame[{Opacity[0.5],yzPlane},"\!\(\*Cell[TextData[Cell[BoxData[
FormBox[Cell[TextData[{
Cell[BoxData[
FormBox["y", TraditionalForm]]],
Cell[BoxData[
FormBox["z", TraditionalForm]]]
}]], TraditionalForm]]]]]\)-plane"];xzPlane = {LightBlue,Polygon[{{-10,0,-10},{-10,0,10},{10,0,10},{10,0,-10}}]};
xzPlaneFrame = CartesianFrame[{Opacity[0.5],xzPlane},"xz-plane"];xyPlane = {LightBlue,Polygon[{{-10,-10,0},{-10,10,0},{10,10,0},{10,-10,0}}]};
xyPlaneFrame = CartesianFrame[{Opacity[0.5],xyPlane},"xy-plane"];coordPlanesFrame = CartesianFrame[{Opacity[0.5],{yzPlane,xzPlane,xyPlane}},"Coordinate planes"];Frames={axesFrame,xAxisFrame,yAxisFrame,zAxisFrame,yzPlaneFrame,xzPlaneFrame,xyPlaneFrame,coordPlanesFrame};
Animate[Frames[[t]],{t,1,8,1}]

(*Change the x,y,z coordinates here and the animation will update*)
x=6;
y=9;
z=4;
point = {PointSize[0.02],Point[{x,y,z}]};
zLine = {Thickness[0.008],Line[{{x,y,0},{x,y,z}}]};
yLine = {Thickness[0.008],Line[{{x,0,0},{x,y,0}}]};
xLine = {Thickness[0.008],Line[{{0,0,0},{x,0,0}}]};
vector = {Red,Thickness[0.008],Arrow[{{0,0,0},{x,y,z}}]};
VectorFrame[graphics_,title_]:=  Show[Graphics3D[Join[graphics,{Text["x",{10.5,0,0}],Text["y",{0,10.5,0}],Text["z",{0,0,10.5}]},{Opacity[0.1],{yzPlane,xzPlane,xyPlane}}]],Axes->True,AxesOrigin->{0,0,0},PlotRange->{{0,10},{0,10},{0,10}},Boxed->False,PlotLabel->Style[title,FontSize->24],ViewPoint->{5,1,2}];
firstOctantFrame=VectorFrame[{},"The first octant"];
pointFrame=VectorFrame[{point,{Blue,{zLine,yLine,xLine}}},StringForm["Point \!\(\*Cell[TextData[Cell[BoxData[
FormBox[
RowBox[{"P", "=", 
RowBox[{"(", 
RowBox[{"``", ",", "``", ",", "``"}], ")"}]}], TraditionalForm]]]]]\)",x,y,z]];zComponentFrame=VectorFrame[{point,{Blue,{yLine,xLine}},{Red,zLine}},"z-component"];yComponentFrame=VectorFrame[{point,{Blue,{zLine,xLine}},{Red,yLine}},"y-component"];xComponentFrame=VectorFrame[{point,{Blue,{zLine,yLine}},{Red,xLine}},"x-component"];vectorFrame=VectorFrame[{point,vector,{Blue,{zLine,yLine,xLine}}},"Vector \!\(\*Cell[TextData[Cell[BoxData[
FormBox[
RowBox[{"⟨", 
RowBox[{"6", ",", "9", ",", "4"}], "⟩"}], TraditionalForm]]]]]\)"];
vectorFrames={pointFrame,zComponentFrame,yComponentFrame,xComponentFrame,vectorFrame};
Animate[vectorFrames[[t]],{t,1,5,1}]

(*Change the vectors u and v and the picture will update.*)
u = {5,0,-3};
v = {1,8,4};
sum = u+v;
uVector = {Blue,Thickness[0.008],Arrow[{{0,0,0},u}]};
vVector = {Blue,Thickness[0.008],Arrow[{{0,0,0},v}]};
sumVector = {Red,Thickness[0.008],Arrow[{{0,0,0},sum}]};
uText = Text["u",1.1*u];
vText = Text["v",1.1*v];
sumText = Text["u+v",1.1*sum];
uDashed = {Dashed,Line[{u,sum}]};
vDashed = {Dashed,Line[{v,sum}]};
parallelopiped = {LightGray,Opacity[0.1],Polygon[{{0,0,0},u,sum,v}]};
sumFrame[graphics_,title_]:=Show[Graphics3D[Join[graphics,{Text["x",{11,0,0}],Text["y",{0,11,0}],Text["z",{0,0,11}]},{uVector,vVector,uText,vText}]],Axes->True,AxesOrigin->{0,0,0},PlotRange->{{-10,10},{-10,10},{-10,10}},Boxed->False,PlotLabel->Style[title,FontSize->24],ViewPoint->{5,1,2}];uvFrame=sumFrame[{},"Sum of two vectors"];
uvsFrame = sumFrame[{sumVector,sumText,uDashed,vDashed,parallelopiped},"Sum of two vectors"];
uvFrames={uvFrame,uvsFrame};
Animate[uvFrames[[t]],{t,1,2,1}]