The example does not work any more; it has to do that the 'structure' of the graphics has changed (extra nested / a different tree). The Nest[...] Actually is the same as Part[test,1,1,1,1]. But this should not be performed on a graphics construct as it is bound to not work from version to version. One should use Cases[ PLOT, Line[x__]:>x,[Infinity]] or so to get all the line pieces. A better way in this case is as follows:
test=Reap[Plot[Sin[x], {x, 0, 2Pi}, EvaluationMonitor :> Sow[{x, Sin[x]}]]][[2,1]];
Show[Graphics[{Thickness[0.001],Map[Line[{{#[[1]],0},#}]&,test]}],Axes->Automatic]
or as follows:
test=Join@@Cases[Plot[Sin[x], {x, 0, 2Pi}],Line[x_]:>x,\[Infinity]];
Show[Graphics[{Thickness[0.001],Map[Line[{{#[[1]],0},#}]&,test]}],Axes->Automatic]
Both implementations will be more robust (especially the one with Sow and Reap) for future versions.
Alternatively you could also use ListLinePlot and then Filling option to get the lines:
data = Reap[Plot[ Sin[x], {x, 0, 2 Pi}, EvaluationMonitor :> Sow[{x, Sin[x]}]] ][[2, 1]];
ListPlot[data , Filling -> Axis]
Just a bad example I would say, not very well thought out...