# How do I emulate MATLAB's comet plot?

I have tried the following code:

ParametricPlot[{Sin[12 u] Cos[u], Sin[12 u] Sin[u]}, {u, 0, 2 Pi}]


and it produced the following image: MATLAB has a comet command that will draw this parametric plot in real time, allowing the viewer to watch as the particle traces out the plot. Is there a way to do this in Mathematica?

## 3 Answers

You can use Animate, you'll note that I added some options, remove them to see why :)

Animate[
ParametricPlot[{Sin[12 u] Cos[u], Sin[12 u] Sin[u]}, {u, 0, umax},
PlotRange -> {-1, 1},
PerformanceGoal -> "Quality"],
{umax, 0.1, 2 Pi}]


You can change Animate to Manipulate if you wish to slide back and forth manually as well

• Animate seems like Manipulate in many ways, it allows manual control of the slider as well, it merely starts it running automatically. – BoLe Jul 31 '16 at 7:16
frames = Table[
ParametricPlot[{Sin[12 u] Cos[u], Sin[12 u] Sin[u]}, {u, 0, t},
PlotRange -> {{-1, 1}, {-1, 1}}], {t, .001, 2 Pi, 2.1 Pi/100}]


and then either

ListAnimate[frames]


or

Export["movie.gif", frames]


depending on what you want. The latter yields You can also do this:

 Manipulate[ParametricPlot[{Sin[12 u] Cos[u], Sin[12 u] Sin[u]}, {u, 0, t},
PlotRange -> {{-1, 1}, {-1, 1}}], {t, .01, 2 Pi}]

• I just went back and applied this to some of my diff. eq. homework and this is amazing. Thank you! – Reid Dec 27 '12 at 23:51
• @Reid: Glad to help! – JohnD Dec 28 '12 at 1:11

Unchecked :

 Needs["NETLink"]
m = CreateCOMObject["matlab.application"]

m@Execute["t = 0:.01:2*pi;
x = sin(12*t).*(cos(t));
y = sin(12*t).*(sin(t));
comet(x,y);"]
`

First seen this here.