Perihelion shift

Clear[a,e,k];
r[phi_,a_,e_,k_]=a*(1-e^2)/(1+e*Cos[k*phi])

x[phi_]=r[phi,a,e,k]*Cos[phi];
y[phi_]=r[phi,a,e,k]*Sin[phi];

(* example: ellipse for k=1 *)

{a,e,k}={2,.6,1};ParametricPlot[{x[phi],y[phi]},{phi,0,2*Pi}]

(* example: non-closed ellipse for k=1.1 *)

{a,e,k}={2,.6,1.1};ParametricPlot[{x[phi],y[phi]},{phi,0,2*Pi}]

(* animation *)

{a,e,k}={2,.6,1.05};Animate[ParametricPlot[{x[phi],y[phi]},{phi,0,maxphi},PlotPoints->100,PlotRange->{{-4,4},{-4,4}}],{maxphi,Pi,24*Pi}]