2
$\begingroup$

Please tell me how I can make an animation with rotating vectors rather than rotating points.

Manipulate[{ComplexListPlot[{2.5 E^(I x), 2.5 E^(I (x + (2 Pi)/3)), 
    2.5 E^(I (x - (2 Pi)/3))}, 
   PlotStyle -> Directive[Red, PointSize[.025]], 
   PlotRange -> {-3 - 3 I, 3 + 3 I}]}, {x, 0, 2 Pi, 0.1}]

Thanks to all

$\endgroup$

2 Answers 2

2
$\begingroup$

If you look at the InputForm of the output of ComplexListPlot, you will find that it contains a single Point expression containing your three points. You could replace the points in the output of the plotting function with appropriate Arrow objects starting at the origin using ReplaceAll:

plot /. Point[l_] :> Map[Arrow[{{0, 0}, #}] &, l]

In your code, this would become:

Manipulate[
 ComplexListPlot[{2.5 E^(I x), 2.5 E^(I (x + (2 Pi)/3)), 2.5 E^(I (x - (2 Pi)/3))}, 
   PlotStyle -> Directive[Red, PointSize[.025]], 
   PlotRange -> {-3 - 3 I, 3 + 3 I}
  ] /. Point[l_] :> Map[Arrow[{{0, 0}, #}] &, l],
 {x, 0, 2 Pi, 0.1}
]

enter image description here

$\endgroup$
4
$\begingroup$

Instead of "ComplexListPlot" you may use "Graphics" together with "Arrow" like:

Manipulate[
 Graphics[{Red, 
   Arrow[{{0, 0}, ReIm[#]}] & /@ {2.5 E^(I x), 2.5 E^(I (x + (2 Pi)/3)), 2.5 E^(I (x - (2 Pi)/3))}}, 
  PlotRange -> 3 {{-1, 1}, {-1, 1}}, Axes -> True], {x, 0, 2 Pi, 0.1}]

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.