Re: Spurious Line
- To: mathgroup at smc.vnet.net
- Subject: [mg75049] Re: Spurious Line
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Sun, 15 Apr 2007 05:12:11 -0400 (EDT)
- Organization: The Open University, Milton Keynes, UK
- References: <evpoeu$69p$1@smc.vnet.net>
Jeff Albert wrote: > When I run the following I get what is obviously a spurious straight line > connecting (-100,0) and (300,400*.7). How do I get rid of that line? > > {{-100,0},{0,-100},{100,-200*.9},{200,-300*.8},{300,-400*.7},{-100,0},{0,100 > },{100,200*.9},{200,300*.8},{300,400*.7}} > > ListPlot[%, PlotJoined->True] > > Jeff Hi Jeff, There is no spurious line in the plot, indeed. The option PlotJoined draws a line between each pair of points. The pairs are a partition of the list of points with an offset of one. First, a line is drawn between points 1 and 2, then a line is drawn between points 2 and 3, and so on. Evaluating the following expressions will show a step by step building of the plot and the creation of the incriminated line. In[1]:= list = {{-100, 0}, {0, -100}, {100, -200*0.9}, {200, -300*0.8}, {300, -400*0.7}, {-100, 0}, {0, 100}, {100, 200*0.9}, {200, 300*0.8}, {300, 400*0.7}}; Needs["Graphics`Graphics`"]; g = (ListPlot[##1, PlotJoined -> True, Frame -> True, DisplayFunction -> Identity, PlotRange -> {{Min[list[[All,1]]], Max[list[[All,1]]]}, {Min[list[[All,2]]], Max[list[[All,2]]]}}, PlotLabel -> StringJoin["Drawing line from ", ToString[First[##1]], " to ", ToString[Last[##1]]], PlotStyle -> {Red, AbsoluteThickness[3]}] & ) /@ Partition[list, 2, 1]; Do[DisplayTogether[g[[Range[n]]]], {n, 1, Length[g]}] Regards, Jean-Marc