       Re: Dotted Lines at Discontinuities

• To: mathgroup at smc.vnet.net
• Subject: [mg73335] Re: Dotted Lines at Discontinuities
• From: Bob Hanlon <hanlonr at cox.net>
• Date: Tue, 13 Feb 2007 06:52:41 -0500 (EST)
• Reply-to: hanlonr at cox.net

```I am not a professor/educator.

Send your questions to MathGroup, not to me.

Use a dummy function name temporarily.

plotDisc[args___]:=Module[{p,temp},
p=(Plot[args,DisplayFunction->Identity]//.
(Line[{s___,{x1_,y1_},{x2_,y2_},e___}]/;
(Abs[(y2-y1)/(x2-x1)]>10||Sign[y1]!=Sign[y2])):>
Sequence[Line[{s,{x1,y1}}],
AbsoluteDashing[{5,5}],temp[{{x1,y1},{x2,y2}}],
AbsoluteDashing[{}],Line[{{x2,y2},e}]])/.temp->Line;
Show[p,DisplayFunction->\$DisplayFunction]];

g=UnitStep[x-3]+UnitStep[x-5]-3UnitStep[x-6];

plotDisc[g,{x,0,10},PlotStyle->Red];

Bob Hanlon

---- Mr Ajit Sen <senra99 at yahoo.co.uk> wrote:
> Dear Prof Hanlon,
>
>   I refer to the nice code you posted in Mathgroup
> (Sun 17 Sept 2006), whereby the vertical lines at
> discontinuities are removed:
>
>   plotDisc[args___] := Module[{p},
>       p = Plot[args, DisplayFunction -> Identity] //.
>           (Line[{s___, {x1_, y1_}, {x2_, y2_},
> e___}]/;
>                 (Abs[(y2-y1)/(x2-x1)] > 10^3 &&
>                     Sign[y1] != Sign[y2])):>
>             Sequence[Line[{s, {x1, y1}}], Line[{{x2,
> y2}, e}]];
>       Show[p, DisplayFunction -> \$DisplayFunction]];
>
>   My problem is I'd like to have them in, but as
> dotted lines instead.  At the moment I'm using your
> code with some slight modifications (e.g. 10 instead
> of 10^3, || instead of && ) and then include the
> dotted lines one by one.  Thus for the function
>
>      g = UnitStep[x - 3] + UnitStep[x - 5] -
> 3UnitStep[x - 6] ,
>
>   I am doing it as follows :
>
>   p=plotDisc[g,{x,0,10}]
>   p1=Graphics[{Red, AbsoluteDashing[{5,10}],
>      Line[{{3,0},{3,1}}]}]
>   p2=Graphics[{Red, AbsoluteDashing[{5,10}],
>      Line[{{5,1},{5,2}}]}]
>   p3=Graphics[{Red, AbsoluteDashing[{5,10}],
>      Line[{{6,2},{6,-1}}]}]
>
>  Show[p,p1,p2,p3]
>
>   This works fine but I think there should be a neater
> way to go about it  for arbitrary discontinuous
> functions.  I tried to put
>
>   Graphics[{Red, AbsoluteDashing[{5,10}],
>      Line[{{x1,y1},{x1,y2}}]}]
>
>   before the last line in your code, but that just
> didn't work !
>
>   I would be most grateful if you could please help me
> out on this.
>
>   Thank you very much in advance.
>
>   Ajit Sen.

```

• Prev by Date: Re: Re: can't InstallJava[] on Linux-x86-64 to Import an xls file
• Next by Date: Comments in the front end
• Previous by thread: Re: Re: can't InstallJava[] on Linux-x86-64 to Import an xls file
• Next by thread: Re: Dotted Lines at Discontinuities