Question: Is it possible to change the Dashed Style of a curve into circles with Plot command ?

```
Plot[Cos[x], {x, 0, 2*Pi}, PlotStyle -> Directive[Dashed, Thickness[0.005]]]

```

![enter image description here](https://i.stack.imgur.com/Q1554.jpg)

Answer: 
If you want to roll your own solution to evenly distrubute circles along the path you could use the so called arc length parametrization of the path $p(t)=(t,\cos(t))$. For this particular curve, it will need to be computed numerically.

```
p[t_] := {t, Cos[t]};
$Assumptions = {t > 0};
speed[t_] = Simplify[Norm[p'[t]]];
arcLength[t_?NumericQ] := NIntegrate[speed[tau], {tau, 0, t}]
phi[s_?NumericQ] := t /. FindRoot[arcLength[t] == s, {t, 1}];
p1[s_?NumericQ] := p[phi[s]];
Graphics[Table[
  Circle[p1[s], 0.05], {s, 0, arcLength[2 Pi], arcLength[2 Pi]/30}],
 Axes -> True]

```

![enter image description here](https://i.stack.imgur.com/D0rlu.png)
This is an alternate compute-your-own-arc-length approach, based directly on the line produced by plot, (ie not differentiating its functional form as in Mark's answer)

```
p1 = Plot[Cos[x], {x, 0, 2 Pi}]
linepoints[plist_, n_] := Module[{arc, tlen},
  arc = Interpolation[
        Transpose@{{0}~Join~
                  Accumulate@(Norm@(Subtract @@ #) & /@ 
                       Partition[plist, 2, 1]), plist},
        InterpolationOrder -> 3];
  tlen = Last@First@First@(arc);
  Table[ arc[tlen iz / n], {iz, 0, n}]];
ListPlot[
       linepoints[
          First@(First@Cases[FullForm[ p1], Line[__], Infinity]),  25],
       PlotMarkers -> ({Graphics@Circle[{0, 0}], .025})]

```

![enter image description here](https://i.stack.imgur.com/Sxvxh.png)

A nice illustration comparing equal spaced points vs a more simple ListPlot[Table]] approach:

```
p1 = Plot[Cos[x^2], {x, 0, Pi}];
Show[
 {ListPlot[
     linepoints[First@(First@Cases[FullForm[ p1], Line[__], Infinity]), 
     120], PlotMarkers -> ({Graphics@Circle[{0, 0}], .025})],
  ListPlot[Table[{x, -Cos[x^2]}, {x, 0, Pi, 2 Pi/120}], 
          PlotMarkers -> ({Graphics@Rectangle[{0, 0}], .025})]}, 
    PlotRange -> All]

```

![enter image description here](https://i.stack.imgur.com/K1s14.png)